NIIオープンハウス2012 学認セッション「学認にまつわる仕様書の書き方と調達の仕方」

IdPを独自構築した事例－ 愛媛大学の場合 ー愛媛大学 総合情報メディアセンター
事務課 情報基盤チーム 技術員
増田 隆司

スケジュール概要
2011年
 8月
 10月
 12月

2012年

 1月
 2月1日 3月9日 3月16日
 3月19日
 4月2日NII情報処理技術セミナー受講
学認へ参加する方針を決定
学認への参加が学内で承認される
認証環境構築開始
テストフェデレーションにて検証開始
運用フェデレーションへ参加申請
運用フェデレーションへの申請承認
図書館と連携し電子ジャーナルの学認利用申請開始（対象ジャーナル数：１０）
教職員・学生へのサービス開始

ＩｄＰ構築に必要な知識・スキル
講演者の経歴 2010年5月以前
システムエンジニアとして主に金融系の業務アプリケーションを開発
 2010年6月以降
愛媛大学総合情報メディアセンターにて技術員として主に情報基盤システムの運用・管理に従事

必要な知識・スキル ＯＳのセットアップ（愛媛大学ではＣｅｎｔＯＳ）
 必要なソフトウェアのセットアップ
 ＬＤＡＰ，スキーマに関する知識 ⇒経験、知識不足のため理解と構築に時間を要した。
 ＩｄＰの設定
 ログ解析

愛媛大学の認証環境
無線LAN
VPN

学認
IdP
学術認証連携基盤

学生用メール
学生用パソコン
修学支援システム
(学生)

学生

教職員

愛媛大学アカウント

他(学生用システム)
他(学生用システム)

教職員用メール

修学支援システム(教員)

他(教職員用システム)
他(教職員用システム)

発生した問題非システム的な問題
 「学認とは？」を説明してもよくわからないという人や誤解されるケースが多々発生。
 学認に参加するためにシステム構築が必要ということが学内で認識されていなかった。

システム的な問題
 愛媛大学の認証系は教職員用と学生用が存在。
⇒LDAPプロキシサーバを構築。
⇒当初、LDAPプロキシが正常に動作せず。
 既存のＬＤＡＰに登録されている属性情報が不足しているものやＲＦＣに準拠してしないものが存在。

認証環境の構成
IdP（アイデンティティプロバイダ）サーバ

新規構築

仮想サーバに構築
仮想ソケット数：2/メモリ2GB
OS:CentOS6.2

既存の認証系として、教職員用と学生用の２系統が存在④属性情報
ＩｄＰから１系統に見えるように
ＬＤＡＰプロキシサーバを構築①認証要求
LDAPプロキシサーバ

新規構築

仮想サーバに構築
仮想ソケット数：4/メモリ2GB
OS:CentOS5.7③’属性情報②認証要求③属性情報②’認証要求情報基盤システム
LDAPサーバ（学生）
学生の認証

統合認証システム
LDAPサーバ③で取得できない
場合は②’を実行
既存

既存

教職員の認証LDAPプロキシサーバの構築
IdPサーバからLDAPプロキシサーバへ問合せを行い、まず教職員用LDAPをサーチ、次に学生用LDAPをサーチし、認証が成功すれば必要な属性を返却する。
当初、CentOS6.2+OpenLDAP2.4で構築。
LDAP

LDAP

LDAPS

LDAPS
通信をLDAP over SSLに変更すると正常に動作せず。

設定を色々と変更して試すがうまくいかないためNIIに相談。
CentOS5.7では正常に動作。
CentOS5.7で再構築。

IdPから送信が必要な属性
属性名内容取得元の例

mail

メールアドレスLDAPo

大学名(英字)IdPでStaticに記載

ou

所属学部・部署(英字)

LDAP

sn

姓(英字)

LDAP

givenName

名(英字)

LDAP

displayName

氏名・表示名 (英字)LDAP

eduPersonAffiliation

職種等・身分

LDAP

eduPersonPrincipalName[ID]@ehime-u.ac.jp

IdPで生成eduPersonEntitlement

SP利用資格情報

IdPでStaticに記載

eduPersonScopedAffiliation[eduPersonAffiliation]@ehime-u.ac.jp）

IdPで生成eduPersonTargetedID[IdPのEntityID]+[SPのEntityID]+[ハッシュ化したID]

IdPで生成jao

大学名(日本語)

IdPでStaticに記載

jaou

所属学部・部署(日本語)

LDAP

jasn

姓（日本語）LDAP

jaGivenName

名（日本語）LDAPjaDisplayName

氏名・表示名(英字)LDAPLDAP属性の整備◆LDAPに必要な属性と整備前の状況（赤字斜体が要対応）

属性名

教職員用LDAP

学生用LDAP

mail○

○

ou

全角文字（日本語）が設定（属性なし）sn

全角文字（日本語）が設定○

givenName

全角文字（日本語）が設定○

displayName

異なる属性名で設定あり（属性なし）

eduPersonAffiliation（属性なし）（属性なし）

jasn

snに設定あり（属性なし）

jaGivenName

givenName に設定あり（属性なし）

jaDisplayName

異なる属性名で設定あり（属性なし）

jaou

ouに設定あり（属性なし）

・現状登録されているユーザの属性情報を修正
・新規ユーザに適用できるよう登録システムを改修

IdPサーバの構築
OSのセットアップ、Apache+mod_ssl,OpenLdapのインストールまでできれば、NIIの学認ホームページの技術ガイドに記載されている内容だけでほぼ構築可能
主な設定ファイル

主な設定内容relying-party.xml

entityIDの設定
メタデータ自動ダウンロードの設定

handler.xml

ログインのしくみの設定⇒TypeをUsernamePasswordとし login.configを参照するだけ。

login.config

認証先のLDAP設定（LdapURL，baseDN， userFilter，subtreeSearch，SSL）

attribute-resolver.xml

IdPで取り扱う属性情報の設定
属性情報の取得元の設定(LDAP，ComputedID等)

attribute-filter.xml

attribute-resolverで設定した属性情報のうち送信する属性を各SP毎に設定。

設定ファイルを変更したら必ずプロセスを再起動しログを確認⇒ /opt/shibboleth-idp/logs/idp-process.log

今後の課題 eduPersonTargetedID生成時のStoredIDの使用
ConputedIDの場合、ユーザIDをハッシュ化する際のアルゴリズムとしてSHA-1を使用しており、低い確率(1/２80)ではあるが衝突が発生する可能性がある。
⇒運用開始時はConputedIDを使用。
 ユーザ同意取得システム uAapprove.ｊｐの適用
学認ではSPに個人情報を送信するため、ユーザ同意を得て使用してもらうことが望ましい。
⇒運用開始時は導入せず、ログイン画面に注意書きとリンク先のホームページに詳細を記載して代替。

ログイン画面

SPに個人情報を送信する旨を記載

ユーザへの送信属性通知
組織等

属性名では一般ユーザに解り辛いため、各属性を右図にように・「氏名」・「所属」
・「身分」
・「ユーザID」・「メールアドレス」に分類して、各SP毎に送信する情報に●印をつけてホームページに掲載。

サービス・利用方法

氏名

送信情報
所属 身分 ﾕｰｻﾞID

Science Direct SCOPUS
Elsevier（図）SpringerLink
Springer（図）Web of Knowledge EndNote Web
Thomson Reuters（図）OvidSP
Ovid（図）CambridgeJournals Online
CUP（図）EBSCO hostEBSCO（図）IOPscienceIOP（図）Royal Society of Chemistry（図） RSC Publishing
KOD
研究社（図）
Microsoft

国立情報学研究所

DreamSpark（注）利用方法
CiNii（図）FaMCUsFshareEduroam-Shiba
利用方法

●
●
●
●
●

●
●

●

●

●WebELS
WebELS Learning利用方法
WebELS Meeting利用方法

edubase Cloud
利用方法
学認申請システム
GakuNin mAP
利用方法
meatwik
利用方法

ﾒｰﾙｱﾄﾞﾚｽ

●

●

●

●
●

●

●

●

●

●

利用状況
18

教職員

16

14

12

・主にジャーナル利用者（CiNii, Scopus, Science Direct）
・当初想定していたよりも学生の利用が多い

学生

10

8

6

420※同一日に同一IDで同一SPを利用しているものはカウント対象外