Cosminexus V9 アプリケーションサーバ 機能解説 セキュリティ管理機能編

[目次][用語][索引][前へ][次へ]

5.13.1 標準ログインモジュールと連携するための実装

JAASでは,一度の認証で複数の認証モジュールを順次呼び出せます。これらの認証モジュールでは,LoginModuleインタフェースのinitializeメソッドの第3パラメタに渡されるMapオブジェクト(sharedState)を利用して情報を渡します。ここでは,標準ログインモジュール別に,追加する情報を示します。なお,DelegationLoginModuleおよびWebPasswordJDBCLoginModuleでは,情報は追加しません。

<この項の構成>
(1) WebPasswordLoginModule,WebCertificateLoginModule,およびWebPasswordLDAPLoginModule
(2) WebSSOLoginModule

(1) WebPasswordLoginModule,WebCertificateLoginModule,およびWebPasswordLDAPLoginModule

WebPasswordLoginModule,WebCertificateLoginModule,およびWebPasswordLDAPLoginModuleでは,次のLoginModuleを呼び出す前にsharedStateに次に示す情報を追加します。

キー:com.cosminexus.admin.auth.userattributes
値の型:UserAttributes
説明:Subjectに関連づけたユーザ属性を格納したUserAttributesオブジェクトを参照します。
設定されるタイミング:commitメソッド終了直前

(2) WebSSOLoginModule

同一セッション内で認証済みであれば,そのユーザに対応するユーザマッピングから該当レルムのユーザの認証情報を取得して,カスタムログインモジュールを呼び出す前に次に示す情報をsharedStateに追加します。該当セッションで初めて認証する場合や,ユーザマッピング上に認証情報がない場合は,情報を追加しません。

キー:com.cosminexus.admin.auth.sso.userid
値の型:String
説明:ユーザマッピングのUSERIDで定義した値です。
設定されるタイミング:カスタムログインモジュールのloginメソッドを呼び出す直前

キー:com.cosminexus.admin.auth.sso.secdat
値の型:String
説明:ユーザマッピングのSECRETDATAで定義した値です。sharedStateに格納される場合は,復号化されて格納されます。
設定されるタイミング:カスタムログインモジュールのloginメソッドを呼び出す直前

キー:com.cosminexus.admin.auth.sso.pubdat
値の型:String
説明:ユーザマッピングのPUBLICDATAで定義した値です。
設定されるタイミング:カスタムログインモジュールのloginメソッドを呼び出す直前

また,各キーについては,統合ユーザ管理フレームワークのコンフィグレーションファイルで変更できます。すでにカスタムログインモジュールがあり,sharedStateから認証情報を取得できる場合,そのカスタムログインモジュールの仕様に合わせたキーにできます。コンフィグレーションファイルの設定内容については,「14.2 jaas.conf(JAASのコンフィグレーションファイル)」を参照してください。