トークン生成プログラム用の汎用セキュリティー・トークン・ログイン・モジュール
Web サービス要求が行われると、アプリケーション・サーバー は Web Service Security 認証プロセスの一部として、トークン生成プログラム用の 汎用セキュリティー・トークン・ログイン・モジュールを呼び出します。
ログイン・モジュールは、WS-Trust Issue 要求または WS-Trust Validate 要求を 通して、セキュリティー・トークン・サービス (STS) にトークン生成プロセスを委任します。STS は この要求を処理し、RequestSecurityTokenResponse メッセージを ログイン・モジュールに戻します。ログイン・モジュールは、この STS 応答メッセージからのトークンを、Web サービス要求メッセージのセキュリティー・ヘッダー に組み込みます。トークンが戻されない場合、または STS 呼び出しからエラーが発生した場合は、 ログイン・モジュールは LoginException メッセージを 生成し、Web サービス・クライアントにエラーが戻されます。
- 入力または出力セキュリティー・トークンのトークン・タイプが異なる場合のセキュリティー・トークン交換
- 1 つの ID を別の ID にマップする場合のセキュリティー・トークン交換
- 認証されたユーザーがターゲット Web サービスの起動を許可されることを確認するための許可検査の評価
- トークン交換は、RunAs Subject から起動されるか、または、Web Services Security ランタイム環境によって生成されます。 交換は、トラスト要求に対して構成されたポリシー・セットおよびバインディング に基づきます。
- 適切な Java™ 認証・承認 サービス (JAAS) ログイン構成名を指定する必要があります。
- コールバック・ハンドラー・クラス名を指定する必要があります。
サポートされるトークン・タイプ
- 指定された STS で処理可能な ValueType 値
を持つトークン・タイプであれば、任意のトークン・タイプを指定できます。使用する STS に
応じて、以下のトークン・タイプが含まれます。
- Security Assertion Markup Language (SAML) 2.0
- SAML 1.1
- ユーザー名
- パスチケット (PassTicket)
- Kerberos
- Lightweight Third Party Authentication (LTPA)
- Tivoli® Access Manager クレデンシャル
- サービス・プロバイダーへ SOAP メッセージに入って送信される、要求されたトークンは、 ポリシー内に指定されたトークンです。
- このトークンは認証にのみ使用できます。このトークンを保護トークンとして 使用することはできません。SAML バージョン 2.0、1.1、および 1.0 の場合、 bearer 確認方式および sender-voucher 確認方式のみがサポートされます。
トークン生成プログラム用の 汎用セキュリティー・トークン・ログイン・モジュールを、WS-Trust Issue 要求または WS-Trust Validate 要求の どちらかを使用してセキュリティー・トークンの交換または妥当性検査を行うように構成できます。下記セクションで、これら 2 つの選択肢 について説明します。
WS-Trust Issue
- 現行のセキュリティー・コンテキスト内の RunAs Subject
- トラスト・クライアント・ポリシー・セットに対するバインディング内で構成された コールバック・ハンドラー
WS-Trust Validate
- SAML 2.0
- SAML 1.1
- ユーザー名
- パスチケット (PassTicket)
- Kerberos
- LTPA
- LTPA バージョン 2
WS-Trust Issue または WS-Trust Validate の使用
- 現行のセキュリティー・コンテキストに RunAs Subject が存在する
- 要求されたトークンの ValueType 値に一致する値タイプを持つセキュリティー・トークンが 1 つだけ存在する
また、 RunAs Subject からトークンを選択 し、そのトークンを、要求されたトークン用に妥当性検査および交換することもできます。選択したトークン の ValueType 値は、要求されたトークン と異なっていてもかまいません。詳しくは、Web Services Security プロセスのトークン生成プログラム側の認証トークン 用の汎用セキュリティー・トークン・ログイン・モジュールの構成についての 文書を参照してください。

- LTPA または LTPA v2 セキュリティー・トークンが RunAs Subject 内に存在しない。
- WSCredential が RunAs Subject 内に存在する。
要求されたトークンの ValueType と一致するセキュリティー・トークンが RunAs Subject 内に 1 つだけある 場合、ログイン・モジュールを構成して、一致するそのトークンの妥当性検査を行う WS-Trust Validate 要求を 起動しないようにできます。その代わりに、ログイン・モジュールは、一致するトークンを、妥当性検査なしで 下流のサービス・プロバイダーに送信します。
汎用セキュリティー・トークン・ログイン・モジュールは、以下の条件が当てはまる場合に、自動的に WS-Trust Issue を使用してトークンを要求します。- RunAs Subject が存在しない
- 一致するトークン ValueType 値 が RunAs Subject 内に存在しない
- ログイン・モジュールが RunAs Subject からのトークンを妥当性検査できない
汎用ログイン・モジュールでの WS-Trust Issue の使用、 または WS-Trust Validate の使用のいずれかを強制する構成オプションがあります。詳しくは、Web Services Security プロセスのトークン生成プログラム側の認証トークン 用の汎用ログイン・モジュールの構成についての 文書を参照してください。
sptcfgポリシー・セット
汎用セキュリティー・トークン・ログイン・モジュールの実装は、 ポリシー・セット内の新しいトークン・タイプには関与しません。 例えば、汎用ログイン・モジュールを 使用してユーザー名トークンを生成することを計画している場合、 認証トークンとしてユーザー名トークンを指定するポリシー・セットを作成できます。一部の カスタム・トークン・タイプは、既存のデフォルト・システム・ログイン・モジュールで サポートされていません。ただし、カスタム・ログイン・モジュールを使用して、 それらのトークン・タイプを実装することができます。それらのカスタム・トークン・タイプは、 指定された STS でサポートされていれば、汎用セキュリティー・トークン・ログイン・モジュール によってサポートされます。
バインディング
- 汎用ログイン・モジュールを使用する。
- 既存のシステム・デフォルト・ログイン・モジュールを使用する。
- 独自のカスタム・ログイン・モジュールを作成する。
例えば、ユーザー名トークンを 構成する場合、wss.generate.unt JAAS ログイン構成を 使用し、既存の動作を維持することができます。また一方、汎用セキュリティー・トークン・ログイン・モジュールを使用するために wss.generate.issuedToken JAAS ログイン を構成できます。