Shibboleth IdP 3に関する情報をまとめているページです。

動作確認環境

OSJavaServletIdP
CentOS 6.5OpenJDK 7 (CentOS 6.5付属)Apache Tomcat 7.0.62Shibboleth IdP 3.1.1
CentOS 6.5Oracle Java 8u45 + JCE Unlimited Strength Jurisdiction Policy FilesApache Tomcat 8.0.23Shibboleth IdP 3.1.1

設定

学認メタデータの読み込み

学認メタデータの読み込みはmetadata-providers.xmlで設定します。

認証

LDAPを用いたパスワード認証

Shibboleth IdP 3からは、LDAPモジュールを用いたJAASによるパスワード認証に加えて、直接LDAPを参照するパスワード認証が追加さえました。

直接LDAPを参照するパスワード認証

//saml2:Subject/saml2:NameID

//saml2:Subject/saml2:NameIDattribute-filter.xmlに記述しなくてもsaml-nameid.propertiessaml-nameid.xmlの設定により、SPメタデータの<NameIDFormat>に従って下記の通り送信します。

SPメタデータの<NameIDFormat>の値送信する属性
urn:oasis:names:tc:SAML:2.0:nameid-format:transienttransient-id
urn:oasis:names:tc:SAML:2.0:nameid-format:persistent

persistent-id

persistent-idの設定を行っていない場合は、//saml2:Subject/saml2:NameID自体が送信されません。

<NameIDFormat>がない

saml-nameid.propertiesidp.nameid.saml2.defaultに従う。

デフォルトはurn:oasis:names:tc:SAML:2.0:nameid-format:transient

 

<NameIDFormat>がないSPの場合と<NameIDFormat>がurn:oasis:names:tc:SAML:2.0:nameid-format:persistentの場合の//saml2:Subject/saml2:NameIDの例を下記に示す。

transient-idの設定

transient-idのデフォルトはCryptoTransientに変更になりました。CryptoTransientの使用例を下記に示します。

IdP 2系と同じ短いTransientを使いたい場合は下記の変更を行います。

Transientの使用例を下記に示します。

<saml2:Subject>
    <saml2:NameID
        Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient"
        NameQualifier="https://idp.example.ac.jp/idp/shibboleth"
        SPNameQualifier="https://sp1.example.jp/shibboleth-sp">_f358fb015b9b45c7d18a4a2647e79c33</saml2:NameID>

persistent-id の設定

computedId

computedIdでの設定を下記に示します。

storedId

storedIdでの設定を下記に示します。

eduPersonTargetedId 属性の送信

//saml2:Subject/saml2:NameIDとは別に//saml2:AttributeStatement/saml2:Attribute[@FriendlyName="eduPersonTargetedID"]としてeduPersonTargetedId属性を送信する設定は下記の通りです。

なお、この機能はShibboleth IdP 3ではDeprecated Featuresとなっています。

computedId

computedIdでの設定を下記に示します。Shibboleth IdP 2と同じ設定で送信可能です。

attribute-resolver.xmlのData ConnectorはShibboleth IdP 3の機能を用いて、persistent-idの設定で定義したsaml-nameid.propertiesのプロパティを使って書くこともできます。

storedId

storedIdでの設定を下記に示します。Shibboleth IdP 2と同じ設定で送信可能です。

attribute-resolver.xmlのData ConnectorはShibboleth IdP 3の機能を用いて、persistent-id の設定で定義したglobal.xmlのbeanとsaml-nameid.propertiesのプロパティを使って書くこともできます。

参考