6.2.2. 基本的な署名および暗号化シナリオ

概要

ここで説明したシナリオは、クライアントサーバーアプリケーションです。非対称バインディングポリシー が、クライアントとサーバーの間で送受信されるメッセージの SOAP ボディーを暗号化および署名するよう設定されます。

シナリオ例

図6.1「基本的な署名および暗号化シナリオ」 は、基本的な署名と暗号化のシナリオの概要を示しています。これは、非対称バインディングポリシーを WSDL コントラクトのエンドポイントに関連付けることで指定されます。

図6.1 基本的な署名および暗号化シナリオ

メッセージの保護 01

シナリオの手順

クライアントが図6.1「基本的な署名および暗号化シナリオ」受信者のエンドポイントで同期操作を呼び出すと、要求メッセージと応答メッセージは次のように処理されます。

  1. 送信要求メッセージが WS-SecurityPolicy ハンドラーを通過すると、ハンドラーはクライアントの非対称バインディングポリシーで指定されたポリシーに従ってメッセージを処理します。この例では、ハンドラーは次の処理を実行します。

    1. Bob の公開鍵を使用して、メッセージの SOAP 本文を暗号化します。
    2. Alice の秘密鍵を使用して、暗号化された SOAP 本体に署名します。
  2. 着信要求メッセージがサーバーの WS-SecurityPolicy ハンドラーを通過すると、ハンドラーはサーバーの非対称バインディングポリシーで指定されたポリシーに従ってメッセージを処理します。この例では、ハンドラーは次の処理を実行します。

    1. Alice の公開鍵を使用して署名を検証します。
    2. Bob の秘密鍵を使用して SOAP ボディーを復号します。
  3. 送信応答メッセージがサーバーの WS-SecurityPolicy ハンドラーを通過すると、ハンドラーは次の処理を実行します。

    1. Alice の公開鍵を使用して、メッセージの SOAP ボディーを暗号化します。
    2. Bob の秘密鍵を使用して、暗号化された SOAP ボディーに署名します。
  4. 受信応答メッセージがクライアントの WS-SecurityPolicy ハンドラーを通過するため、ハンドラーは以下の処理を実行します。

    1. Bob の公開キーを使用して署名を検証します。
    2. Alice の秘密鍵を使用して SOAP ボディーを復号します。