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