トラスト・サービス
WebSphere® Application Server により提供されるセキュリティー・トークンはトラスト・サービスと呼ばれます。WebSphere Application Server トラスト・サービスは、セキュリティー・トークンの発行、交換、および検証のための追加の拡張機能を定義するために、Web サービス・トラスト (WS-Trust) のセキュア・メッセージング・メカニズムを使用します。
Web Services Trust (WS-Trust) は、要求/応答プロトコルを定義することにより、セキュリティー・トークンのインターオペラビリティーを可能にする OASIS 標準です。このプロトコルにより、Web サービス・クライアントのような SOAP アクターは、特定のセキュリティー・トークンが相互に交換される、一部の信頼のおける権限を要求することができます。
WebSphere Application Server は、WS-Trust ドラフト仕様のすべてのコンテンツを実装する完全なセキュリティー・トークン・サービスを提供しているのではありません。WebSphere Application Server の WS-Trust のサポートは、セキュアな会話のためのセキュリティー・コンテキスト・トークンの設定が中心です。WebSphere Application Server は、WS-Trust OASIS 標準 (2007 年 3 月 19 日) のバージョン 1.3 で記述されているセキュリティー・フィーチャーの多くをサポートしています。
サード・パーティーの WS-Trust クライアント
WebSphere Application Server は、WS-Trust クライアントの実装を提供しません。サード・パーティーの WS-Trust を使用可能にしたクライアントを使用するように選択することもできますが、そうした場合、WebSphere Application Server はサード・パーティーのトラストを使用可能にしたクライアントをサポートしません。信頼できるクライアントは、これらの SOAP メッセージの生成と応答の処理を容易にできますが、このクライアントは必須ではありません。
WebSphere Application Server は、Web Services Secure Conversation (WS-SecureConversation) のセキュリティー・コンテキスト・トークンの発行、更新、および取り消しに重点を置いています。
トラスト・サービスの要求を作成するためには、WS-Trust 仕様に従う必要があります。 この仕様には、Web サービス・アドレッシング (WS-Addressing) ヘッダーの使用が含まれています。 WS-Addressing ヘッダーは、2004 年 8 月または 2005 年 8 月の両方の仕様で指定されています。 仕様ごとに、SOAP 本体は単一の RequestSecurityToken (RST) エレメントで構成される必要があります。 このエレメントは、WS-Trust および WS-SecureConversation 仕様で定義されているサブエレメントを含むことができます。
ポリシー・セットで定義されているブートストラップ・ポリシーを使用して、WS-Trust SOAP メッセージを保護することができます。 ブートストラップ・セキュリティー・ポリシーは、アプリケーション・サービスとの通信を確立するイニシエーターの処理で呼び出されます。 アプリケーション・サービス以外のサービスへの初期要求は、ブートストラップ・ポリシーを使用して保護されます。 これらの初期要求には通常、WebSphere Application Server トラスト・サービスのようなセキュリティー・トークン・サービス (STS) への 1 つ以上の要求が含まれています。要求の例は、WS-SecureConversation に必要なセキュリティー・コンテキスト・トークンを取得します。イニシエーター は、元の要求を開始するロールであり、たいていはクライアントです。 クライアント・ブートストラップ・ポリシー・セットはトラスト・サービスの発行に対応し、エンドポイント用に接続されたポリシー・セットを更新する必要があります。 トラスト・サービスの取り消しおよび検証に接続された、エンドポイント用ポリシー・セットは、クライアントのアプリケーション・ポリシー・セットに対応する必要があります。
Websphere Application Server は、トラスト・サービスに向けた SOAP メッセージを保護するために、2 つの方法を提供します。 1 番目の方法は、ポリシー・セットで定義されるブートストラップ・ポリシーを使用する方法です。 2 番目の方法は、Web Services Security API (WSS API) を使用する方法です。アプリケーションで WSS API を使用して、プログラムによる API ベースの WS-SecureConversation 用のセキュリティー・コンテキスト・トークンを取得します。
Secure Conversation の場合、クライアントからのエンドポイント・サービスへの要求は、新しい (2 番目の) 要求がトラスト・サービスにより生成され、処理されている間、中断されます。 2 番目の要求により戻されるセキュリティー・コンテキスト・トークンは、サービスとの通信を保護する鍵の派生に使用されます。
高水準トラスト・サービス機能
次のリストには、現在 WebSphere Application Server でサポートされている WS-Trust 関連機能が含まれています。このリストは完全なものではなく、高水準機能にのみ焦点を当てています。
- トラスト・サービス・コンポーネントは、WS-Trust プロトコル・メッセージを処理する各 WebSphere Application Server に組み込まれ、そこで使用可能になります。
- 通信は、RequestSecurityToken (RST)、RequestSecurityTokenCollection (RSTC)、RequestSecurityTokenResponse (RSTR) により実行されます。注: 外部セキュリティー・トークン・サービス (トラスト・サービス) に対して RST 要求を作成することができます。 ただし、WS-SecureConversation に必要なセキュリティー・コンテキスト・トークンが WebSphere Application Server トラスト・サービスによって提供されなければならないという制約があります。
- それぞれの WS-Trust 操作 (発行、取り消し、検証、および更新) についての、セキュリティー・ポリシー。
- 特定の URL 用にトークンを発行する、構成済みのセキュリティー・コンテキスト・トークン・プロバイダー。
- トークン・プロバイダーのトークン特定のパラメーター (例えば、有効期限の時間) の仕様。
- WS-SecureConversation のセキュリティー・コンテキスト・トークン。
- クラスター環境と非クラスター環境の両方におけるセキュリティー・コンテキスト・トークンのキャッシング・サポート。 WebSphere Application Server は、要求がセキュリティー要件を満たした場合に要求されると、セキュリティー・コンテキスト・トークンを発行します。ただし、WebSphere Application Server により提供される WS-SecureConversation は、WebSphere Application Server により発行されるセキュリティー・コンテキスト・トークンのみを処理します。
- WebSphere Application Server トラスト・サービスは、セキュリティー・コンテキスト・トークンをサポートするだけであることに気をつけてください。
- トラスト・サービスは、WS-Addressing の提案仕様 (2004/08) バージョンおよび最終仕様 (2005/08) バージョンの両方をサポートします。
- トラスト・サービスでは、TrustServiceSecurityDefault と呼ばれるデフォルト・ポリシー・セットを使用しています。 これには、WS-Security および WS-Addressing が含まれ、発行操作および更新操作用のデフォルト・セキュリティーを提供します。
- トラスト・サービスでは、TrustServiceSymmetricDefault と呼ばれる 2 番目のデフォルト・ポリシー・セットを使用しています。 これには、WS-Security および WS-Addressing が含まれており、取り消し操作および検証操作用のデフォルト・セキュリティーを提供します。
サポートされていないトラスト・サービス機能
- ネゴシエーション・プロトコルおよび交換プロトコルはサポートされていません。
- 他のトークン・タイプは現在、そのままではサポートされていません。セキュリティー・コンテキスト・トークンのみサポートされています。
- WS-SecurityPolicySet の Trust10 仕様はサポートされていません。
- 請求されない RequestSecurityTokenResponse (RSTR) はサポートされていません。
- 要求セキュリティー・トークン (RST) の要求を外部セキュリティー・トークン・サービス (STS) に対して発行し、セキュアな会話を確立することはできません。現在は組み込みトラスト・サービスのみサポートされています。
- RST に含まれているポリシー要求は受け付けられません。
- トークンを修正する機能 (修正操作) はサポートされていません。
- トークン・サービスへのアクセス用の専用外部エンドポイントはサポートされていません。現在は組み込みトラスト・サービスのみサポートされています。
- トラスト・サービスは EncryptedKey を含むエントロピー・エレメントをサポートしません。
- 代行および転送はサポートされていません。
- OnBehalfOf エレメントはサポートされていません。
- 鍵交換トークン (KET) ・バインディングはサポートされていません。
トラスト・サービスの操作
WebSphere Application Server は特に、エンドポイントの代わりに、WS-SecureConversation のセキュリティー・コンテキスト・トークンを発行する、トラスト・サービスの機能をサポートしています。このトークン発行サポートは現在セキュリティー・コンテキスト・トークンのみに限定されています。 また、トークンを発行、取り消し、検証、または更新するためのトラスト・サービスのポリシーを定義する、トラスト・ポリシー管理もあります。
- http://docs.oasis-open.org/ws-sx/ws-trust/200512/RST/Issue
- http://docs.oasis-open.org/ws-sx/ws-trust/200512/RST/Cancel
- http://docs.oasis-open.org/ws-sx/ws-trust/200512/RST/Validate
- http://docs.oasis-open.org/ws-sx/ws-trust/200512/RST/Renew
- http://docs.oasis-open.org/ws-sx/ws-trust/200512/RST/SCT
- http://docs.oasis-open.org/ws-sx/ws-trust/200512/RST/SCT/Cancel
- http://docs.oasis-open.org/ws-sx/ws-trust/200512/RST/SCT/Renew
セキュリティー・コンテキスト・トークン発行操作のインバウンド RST にはエントロピー・エレメントが含まれている必要があります。 エントロピー・エレメントには BinarySecret が含まれている必要があります。 トラスト・サービスは EncryptedKey を含むエントロピー・エレメントをサポートしません。
トラスト・サービスは請求されない RSTR アクションをサポートしませんので気をつけてください。また、トークンを修正する機能は WebSphere Application Server ではサポートされていません。また、『サポートされていないトラスト・サービス機能』というタイトルのセクションも参照してください。
トラスト・ポリシー・セット関連ファイル
発行および更新のためのデフォルトのトラスト・サービス・ポリシー・セットは TrustServiceSecurityDefault です。各サービス・エンドポイント URL 用に、対応するポリシー・セットおよびバインディングをセットアップできます。