京都産業大学/Shibboleth2
Shibboleth IdP, SP, DSの構築(2008年度実証実験成果報告より)
Shibboleth IdP, SP, DS の構築
京都産業大学コンピュータ理工学部では JA-SIG で開発されている Central Authentication Service (CAS) のサーバを運用しているが、まずは実証実験に参加するためにテスト用の Shibboleth Identity Provider, Service Provider, Discovery Serivce を構築することにした.IdP, SP については手順書どおりで特に問題なく構築することができたが、Discovery Service についてはバージョンアップにより若干対応が必要であった.
サーバ環境・導入したソフトウェア Host OS: MacOS X Server 10.5.6 VMware Fusion 2.0.1 Apache 2.2.9 (mod_ajp) Shibboleth SP v.2.1.1 (mod_shib, shibd: MacPorts shibboleth)
Guest OS: CentOS 5.2 Java 1.6.0_11 Shibboleth IdP v2.1.2 Discovery Service v1.1.0
Shibboleth SP v2.1.1 および Discovery Service v1.1.0 での注意点
Discovery Serivce では AuthnRequest を受け付ける Shibboleth SP の Metadata を登録しておく必要がある.Shibboleth SP では
https://sp01.exmaple.org/Shibboleth.sso/Metadata
のような URL で Metadata を export する機能を提供しているが,v2.1.1 では Discovery Service 用の <Extensions> タグで Binding の情報を出力してくれない.Discovery Serivce v1.0.0 では Binding の情報をチェックしていなかったが,v1.1.0 からはチェックし,定義されていない場合はエラーとするため,Binding の情報を追加する必要がある.これについてはバグとして開発者側で認識されている.
Shibboleth SP 側でのバグ対応が完了するまでは,以下のように手動で Binding の情報を追加する.値は xmlns の値をコピーすれば良い.
<md:Extensions> <DiscoveryResponse xmlns="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol" Binding="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol" Location="https://sp01.example.org/Shibboleth.sso/DS" index="1"/> </md:Extensions>