15.7.6. サービスプロバイダーにおける動的 Account Chooser (アカウントチューザー) の設定
サービスプロバイダー (SP) が複数のアイデンティティープロバイダー (IDP) と設定されている場合、どの IDP を使用してクレデンシャルを認証するかをユーザーが選択できるように PicketLink を設定することができます。
手順15.4 サービスプロバイダーにおける動的 Account Chooser (アカウントチューザー) の設定
- SP Web アプリケーションの
WEB-INF
ディレクトリーにあるjboss-web.xml
で Account Chooser (アカウントチューザー) バルブを設定します。例15.16 SP アカウントチューザーの
jboss-web.xml
ファイル設定<jboss-web> <security-domain>sp</security-domain> <context-root>accountchooser</context-root> <valve> <class-name>org.picketlink.identity.federation.bindings.tomcat.sp.AccountChooserValve</class-name> </valve> <valve> <class-name>org.picketlink.identity.federation.bindings.tomcat.sp.ServiceProviderAuthenticator</class-name> </valve> </jboss-web>
AccountChooserValve
には以下の設定可能なオプションがあります。- DomainName
- ユーザーのブラウザーへ送信されるクッキーに使用されるドメイン名。
- CookieExpiry
- クッキーの有効期限 (秒単位)。デフォルトは
-1
で、ブラウザーが閉じられたときにクッキーの有効期限が切れることを意味します。 - AccountIDPMapProvider
- IDP マッピングの実装の完全修飾名。デフォルトは、SP Web アプリケーションの
WEB-INF
ディレクトリーにあるidpmap.properties
プロパティーファイルです。この実装は、org.picketlink.identity.federation.bindings.tomcat.sp.AbstractAccountChooserValve.AccountIDPMapProvider
を実装する必要があります。 - AccountChooserPage
- 異なる IDP アカウントをリストする HTML/JSP ページの名前。デフォルトは
/accountChooser.html
です。
- IDP のマッピングを定義します。デフォルトは、SP Web アプリケーションの
WEB-INF
ディレクトリーにあるidpmap.properties
プロパティーファイルです。例15.17
idpmap.properties
設定DomainA=http://localhost:8080/idp1/ DomainB=http://localhost:8080/idp2/
- ユーザーが IDP を選択するための HTML ページを SP Web アプリケーションで作成します。デフォルトでは、このファイルは
accountChooser.html
になります。各 IDP への URL には、idpmap.properties
にリストされた IDP の名前を指定するidp
パラメーターが必要です。例15.18
accountChooser.html
設定<html> ... <a href="?idp=DomainA">DomainA</a> <hr/> <a href="?idp=DomainB">DomainB</a> ... </html>