アプリケーションまたはシステム・プロバイダーにおいて、信頼性検証で ID アサーションを実行したい場合は、
信頼性検証が 1 つのログイン・モジュールで実行され、別のログイン・モジュールでクレデンシャルが作成される、
Java Authentication and Authorization Service (JAAS) ログイン・フレームワークを使用して実現することができます。
これらの 2 つのカスタム・ログイン・モジュールは、ID アサーションへのログインを実行する JAAS ログイン構成を
作成するために使用されます。
2 つのカスタム・ログイン・モジュールが必要です。
- ユーザーが実装したトラスト・アソシエーション・ログイン・モジュール。
このログイン・モジュールは、
ユーザーが必要とする、どのような信頼性検証でも実行します。信頼性が検証されたら、
クレデンシャル作成ログイン・モジュールがその情報を使用できるようにするログイン・モジュールの共有状態で、
信頼性検証の状況およびログイン ID は、マップに配置される必要があります。このマップは、com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.state
のプロパティーに保管する必要があります。状態マップには以下の情報が含まれます。
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.trusted
- 信頼する場合は true に設定し、信頼しない場合は false に設定します。
- com.ibm.wsspi.security.common.auth.module.IdenityAssertionLoginModule.principal
- ID のプリンシパルが含まれます。
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.certificates
- ID の証明書が含まれます。
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule モジュールは、クレデンシャル作成を実行します。
信頼性状態情報がログイン・コンテキストの共有状態である必要があります。
このログイン・モジュールは、以下について、Java 2 セキュリティー・ランタイム許可によって保護されています。
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.initialize
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.login
IdentityAssertionLoginModule は、共有状態プロパティーで信頼性情報
com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.state を検索します。
これは、ログインに使用する信頼性状態および ID が含まれるマップです。
このマップには以下が含まれます。
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.trusted
- true に設定される場合は信頼され、false に設定される場合は信頼されません。
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.principal
- プリンシパルが使用される場合、ログインに必要な ID のプリンシパルが含まれます。
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.certificates
- 証明書が使用される場合、ログインに必要な ID が含まれる証明書チェーンの配列が含まれます。
状態、信頼性、または ID 情報が欠落している場合、WSLoginFailedException が戻されます。
ログイン・モジュールは、ID のログインを実行します。これで、サブジェクトに新規 ID が含まれます。