secure conversation を使用して、Web サービスのアプリケーション・メッセージをセキュアにします。
Web サービスを含むアプリケーションは、デプロイ済みでなければなりません。
Organization for the Advancement of Structured Information Standards (OASIS) Web Services Secure Conversation (WS-SecureConversation) ドラフト仕様には、SOAP メッセージの起動側および受信側間のセキュア・セッションを確立する方法が記述されています。 WS-SecureConversation ドラフト仕様には、セキュリティー・コンテキスト・トークン (SCT) を確立するための OASIS Web Services Trust (WS-Trust) プロトコルの使用法も定義されています。 詳細については、OASIS Web Services Secure Conversation 仕様書を参照してください。
WebSphere Application Server は、 WS-SecureConversation のセキュリティー・コンテキスト・トークンを発行するためにエンドポイント機能をサポートします。したがって、SOAP メッセージの起動側および受信側間のセキュア・セッションを提供します。
次図は、保護されたコンテキストの確立とセッション・ベース・セキュリティーの使用に必要なフローを表しています。
WS-SecureConversation 仕様では、セキュリティー・コンテキストは <wsc:SecurityContextToken> セキュリティー・トークンによって表されます。以下の例は、 <wsc:SecurityContextToken> エレメントのアサーション構文を表しています。
<wsc:SecurityContextToken wsu:Id="..." ...> <wsc:Identifier>...</wsc:Identifier> <wsc:Instance>...</wsc:Instance> ... </wsc:SecurityContextToken>
セキュリティー・コンテキスト・トークンは、鍵 ID または鍵の名前を使用することによってそれ自体への参照を行うことをサポートしません。 すべての参照は、ID (wsu:Id 属性に対する)、または <wsc:Identifier> エレメントに対する <wsse:Reference> のいずれかを使用する必要があります。
WebSphere Application Server は、これらの事前定義 secure conversation に関連したポリシーを提供します。
この例では、secure conversation を使用可能にするというタスクを達成するために、デフォルトの SecureConversation ポリシー・セットと、デフォルトの WS-Security バインディングおよび TrustServiceSecurityDefault バインディングが使用されています。デフォルトの SecureConversation ポリシー・セットには、 アプリケーション・ポリシー (symmetricBinding) とブートストラップ・ポリシー (asymmetricBinding) の両方が含まれています。アプリケーション・ポリシーは、アプリケーション・メッセージをセキュアにするために使用され、 ブートストラップ・ポリシーは RequestSecurityToken (RST) メッセージをセキュアにするために使用されます。
セキュリティー・コンテキスト・トークンを発行するトラスト・サービスは、 TrustServiceSecurityDefault システム・ポリシーと TrustServiceSecurityDefault バインディングを使用して構成されます。トラスト・ポリシーは、RequestSecurityTokenResponse (RSTR) メッセージをセキュアにすることを担います。ブートストラップ・ポリシーを変更した場合、トラスト・ポリシーは構成の両方に一致するように変更しなければなりません。
ここで使用する Web Services Security (WS-Security) のデフォルト・バインディングには、 サンプルの鍵ファイルが含まれており、実働で使用する前にカスタマイズする必要があります。 実稼働環境では、カスタム・バインディングを使用することをお勧めします。 また、「開発テンプレートを使用するサーバーの作成」選択項目を使用してプロファイルを作成する場合は、ステップ 2 および 3 をスキップできることにも注意してください。
secure conversation を構成し、ポリシー・セットを構成し、さらにポリシー・アサーションをポリシーに追加するには、以下のステップを実行します。
次に、セキュリティー・コンテキスト・トークンを確立して secure conversation を保護する方法についてのサンプル・シナリオを検討します。