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

ここでは、署名するメッセージ・パーツを指定する際に、XPath 式を使用する場合とキーワードを使用する場合の違いについて説明します。
XPath 式
XPath 式を使用して任意のメッセージのパーツを指定します。XPath は、XML 文書のパーツを指定するために使用される言語です。 XPath の構文については、http://www.w3.org/TR/1999/REC-xpath-19991116 の Web サイトを参照してください。
キーワード
事前定義されたキーワードを使用してメッセージ内の要素のみを指定します。
このタスクは、タイム・スタンプが、XPath 言語構文で指定された SOAP メッセージの要素に追加されるように指定するためのものです。この要素は、「Required Integrity」ダイアログ・ウィンドウで指定されたメッセージ・パーツとともに署名されると想定されます。 以下のステップを実行して、応答コンシューマーまたは要求コンシューマーのいずれかのコンシューマー・セキュリティー制約を構成する際に XPath 式を使用して保全性のためのタイム・スタンプを指定します。 応答コンシューマーはクライアント向けに、要求コンシューマーはサーバー向けに、それぞれ構成されます。以下のステップでは、ステップ 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」ダイアログ・ウィンドウが表示されます。
    1. 「Required Integrity Name」フィールドで保全性要素の名前を指定します。
    2. 「Usage type」フィールドで使用タイプを指定します。 このフィールドには、保全性要素の要件を指定します。 この属性の値は、「Required」または「Optional」のいずれかです。
  6. 「Required Integrity」ダイアログ・ウィンドウの「Timestamp」セクションで「追加」をクリックします。
    1. 「Timestamp」セクションからタイム・スタンプのダイアレクトを選択します。 http://www.w3.org/TR/1999/REC-xpath-19991116 というダイアレクトは、 タイム・スタンプが追加され、XPath 式を使用して署名するメッセージ・パーツを指定します。
    2. タイム・スタンプが追加され、 XPath を使用して署名されるメッセージ・パーツを「Timestamp keyword」フィールドで選択します。 例えば、本文にタイム・スタンプを追加して署名することを指定するには、 「Timestamp keyword」に次の式を指定します。
      /*[namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' and local-name()='Envelope']/*
      [namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' and local-name()='Body']
      重要: 入力した XPath 式の構文が正しいことを確認してください。
  7. これまでに「Required Integrity」ダイアログ・ウィンドウでメッセージ・パーツを定義していない場合は、 「Message Parts」セクションで「追加」をクリックしてメッセージ・パーツを定義します。
  8. 「Message Parts」セクションで、メッセージ・パーツのキーワードを選択します。
  9. OK」をクリックして、構成の変更を保管します。
    注: これらのコンシューマーと生成プログラムの構成は一致している必要があります。
    重要: 必要な保全性のためにタイム・スタンプ機能を使用する場合は、 「Required Integrity」に 1 つのメッセージ・パーツを定義する必要があります。
デジタル署名するメッセージ・パーツを指定した後、 メッセージのデジタル署名に使用する方式を指定する必要があります。 詳しくは、コンシューマー・バインディングの署名情報の構成を参照してください。
関連タスク
コンシューマー・セキュリティー制約への独立したタイム・スタンプの追加
XPath 式によるコンシューマー・セキュリティー制約への保全性のための nonce の追加
コンシューマー・バインディングの署名情報の構成
キーワードによるコンシューマー・セキュリティー制約への保全性のための nonce の追加

フィードバック