キーワードによるコンシューマー・セキュリティー制約への保全性のためのタイム・スタンプの追加

このタスクを使用して、特定の要素にタイム・スタンプが組み込まれている場合に、 メッセージ・パーツと共に、そのタイム・スタンプの親に署名するように指定します。 以下のステップを実行して、タイム・スタンプの親要素が要素内にあるように指定します。 また、タイム・スタンプはメッセージ・パーツのシグニチャーに含まれます。 応答コンシューマーまたは要求コンシューマーのいずれかのコンシューマー・セキュリティー制約を構成します。 応答コンシューマーはクライアント向けに、要求コンシューマーはサーバー向けに、それぞれ構成されます。以下のステップでは、ステップ 2 でクライアント・サイドの拡張機能、 またはステップ 3 でサーバー・サイドの拡張機能のいずれかを構成する必要があります。
  1. ウィンドウ」>「パースペクティブを開く」>「J2EE」の順にクリックします。
  2. オプション: 「プロジェクト・エクスプローラー」ウィンドウを使用してクライアント・サイドの拡張機能を検索します。 「Client Deployment Descriptor」ウィンドウが表示されます。 この Web サービスには、ユーザーが構成する必要のある拡張機能が含まれています。 以下のステップを実行して、クライアント・サイドの拡張機能を検索します。
    1. 「Web サービス」>「クライアント」セクションの順に展開して、 Web サービスの名前をダブルクリックします。
    2. WS Extension」タブをクリックして、「Response Consumer Configuration」セクションを展開します。
  3. オプション: 「プロジェクト・エクスプローラー」ウィンドウを使用して、サーバー・サイドの拡張機能を検索します。 「Web Services Editor」ウィンドウが表示されます。 この Web サービスには、ユーザーが構成する必要のある拡張機能が含まれています。 以下のステップを実行して、サーバー・サイドの拡張機能を検索します。
    1. 「Web サービス」>「サービス」セクションの順に展開して、 Web サービスの名前をダブルクリックします。
    2. 拡張機能」タブをクリックして、「Request Consumer Service Configuration Details」セクションを展開します。
  4. 「Required Integrity」セクションを展開します。 機密性が暗号化を指すのに対して、保全性はデジタル・シグニチャーを指します。 保全性によって、ネットワーク間でデータを送信する際にデータが変更されるリスクが軽減されます。 Simple Object Access Protocol (SOAP) メッセージへのデジタル署名について詳しくは、 XML デジタル・シグニチャーを参照してください。
  5. 追加」をクリックして、キーワードの親要素にあると想定されるタイム・スタンプを指定します。 タイム・スタンプの親要素は、メッセージ・パーツのシグニチャーにも含まれていると想定されます。 「Required Integrity」ダイアログ・ウィンドウが表示されます。 「Required Integrity」でタイム・スタンプを構成する前に、 署名されるメッセージ・パーツまたは要素を少なくとも 1 つ構成する必要があります。 以下のステップを実行して、構成を指定します。
    1. 「Required Integrity Name」フィールドで保全性要素の名前を指定します。
    2. 「Usage type」フィールドで使用タイプを指定します。 このフィールドには、保全性要素の要件を指定します。 この属性の値は、「Required」または「Optional」のいずれかです。以下のオプションが使用可能です。
      Required
      Required」を選択した場合に必要なメッセージ・パーツや要素が署名されていないと、 メッセージは SOAP 障害を伴って拒否されます。
      Optional
      Optional」を選択すると、 署名済みの場合には、選択したメッセージ・パーツや要素のデジタル・シグニチャーが検査されます。 ただし、選択されたメッセージ・パーツまたは要素が署名されていない場合、 コンシューマーはメッセージを拒否しません。
  6. 「Timestamp」セクションで、「追加」をクリックして、タイム・スタンプのダイアレクトを選択します。 http://www.ibm.com/websphere/webservices/wssecurity/dialect-was というダイアレクトは、 想定されるタイム・スタンプの親要素を指定します。 このダイアレクトを選択すると、「Timestamp keyword heading」の下で以下のキーワードのいずれかを選択できます。
    body
    メッセージのユーザー・データ部分を指定します。この body オプションを選択すると、 タイム・スタンプが Simple Object Access Protocol (SOAP) の本文に組み込まれます。 また、タイム・スタンプ (SOAP 本体) の親は、「Required Integrity」でメッセージ・パーツと共に署名されます。
    securitytoken
    タイム・スタンプがセキュリティー・トークン要素に組み込まれるように指定します。 また、タイム・スタンプの親要素 (セキュリティー・トークン) が「Required Integrity」でメッセージ・パーツと共に署名されるように指定します。
    dsigkey
    デジタル・シグニチャーに使用する鍵情報要素にタイム・スタンプが挿入され、 鍵情報要素が署名されることを指定します。
    enckey
    タイム・スタンプが暗号化に使用される鍵情報要素に挿入され、 鍵情報要素が署名されることを指定します。
    messageid
    タイム・スタンプが <wsa:MessageID> 要素に挿入され、<wsa:MessageID> 要素が署名されることを指定します。
    to
    タイム・スタンプがメッセージ内の <wsa:To> 要素に挿入され、<wsa:To> 要素が署名されることを指定します。
    action
    <wsa:Action> 要素が署名されることを指定します。
    relatesto
    タイム・スタンプがメッセージ内の <wsa:RelatesTo> 要素に挿入され、<wsa:RelatesTo> 要素が署名されることを指定します。
  7. 「Required Integrity」にメッセージ・パーツを定義していない場合は、 「Required Integrity」に対してタイム・スタンプを追加するために、 少なくとも 1 つのメッセージ・パーツを定義する必要があります。 以下のステップを実行して、メッセージ・パーツを定義します。
    1. 「Message Parts」セクションで「追加」をクリックし、 「Message parts dialect」フィールドで http://www.ibm.com/websphere/webservices/wssecurity/dialect-was を選択します。
    2. 「Message Parts」セクションで、メッセージ・パーツのキーワードを選択します。
    3. OK」をクリックして、構成の変更を保管します。
    注: これらのコンシューマーと生成プログラムの構成は一致している必要があります。
デジタル署名するメッセージ・パーツを指定した後、 メッセージのデジタル署名に使用する方式を指定する必要があります。 詳しくは、コンシューマー・バインディングの署名情報の構成を参照してください。
関連タスク
コンシューマー・セキュリティー制約への独立したタイム・スタンプの追加
XPath 式によるコンシューマー・セキュリティー制約への保全性のための nonce の追加
コンシューマー・バインディングの署名情報の構成
キーワードによるコンシューマー・セキュリティー制約への保全性のための nonce の追加

フィードバック