アプリケーション・レベルで、要求コンシューマー・バインディング (サーバー・サイド) および
応答コンシューマー・バインディング (クライアント・サイド) の鍵情報を構成できます。
始める前に
鍵情報パネル内で、「Key locator reference」フィールドと「Token reference」フィールドによって参照される、
鍵ロケーターおよびトークン・コンシューマーを構成します。
このタスクについて
このタスクでは、アプリケーション・レベルでの要求コンシューマー (サーバー・サイド) および応答コンシューマー
(クライアント・サイド) バインディング用の鍵情報を構成するために必要なステップを実行します。
コンシューマー側の鍵情報は鍵に関する情報を指定するために使用されますが、
これは受信メッセージのデジタル・シグニチャーを検査するため、またはメッセージの暗号化部分を暗号化解除するために使用されます。
以下のステップを実行して、アプリケーション・レベルでコンシューマー・バインディングの鍵情報を構成します。
プロシージャー
- 管理コンソールで鍵情報構成パネルを見付けます。
- 「アプリケーション」>「エンタープライズ・アプリケーション」>「application_name」とクリックします。
- 「モジュールの管理」の下で、「URI_name」をクリックします。
- 「Web サービス・セキュリティー・プロパティー」では、要求コンシューマー・バインディングおよび応答コンシューマー・バインディングの鍵情報にアクセスできます。
- 要求コンシューマー (受信側) バインディングについては、「Web サービス:
サーバー・セキュリティーのバインディング」をクリックします。
「要求コンシューマー (受信側) バインディング」の下の「カスタムの編集」をクリックします。
- 応答コンシューマー (受信側) バインディングについては、「Web サービス:
クライアント・セキュリティーのバインディング」をクリックします。
「応答コンシューマー (受信側) バインディング」の下の「カスタムの編集」をクリックします。
- 「必須プロパティー」の下の「鍵情報」をクリックします。
- 鍵情報構成の処理を行うには、以下のいずれかをクリックしてください。
- 新規
- 鍵情報構成を作成します。
「Key information name」フィールドに名前を入力します。例えば、con_signkeyinfo などです。
- 削除
- 鍵情報構成 (隣のボックスで選択されている) を削除します。
- 既存の鍵情報構成
- 鍵情報構成の設定を編集します。
- 「鍵情報タイプ」フィールドから鍵情報タイプを選択します。
この鍵情報タイプは、<ds:KeyInfo> エレメント内の <wsse:SecurityTokenReference>
エレメントを使用してセキュリティー・トークンを参照するための様々なメカニズムを指定します。
WebSphere Application Server では以下の鍵情報タイプをサポートしています。
- 鍵 ID
- このセキュリティー・トークンは、一意的にトークンを識別する隠された値を使用して参照されます。
<KeyIdentifier> エレメント値を生成するために使用されるアルゴリズムは、トークン・タイプに依存します。
例えば、「Internet Engineering Task Force (IETF) Request for Comment
(RFC) 3280」で定義されている公開鍵の ID を使用できます。
この鍵情報タイプでは、Simple Object Access Protocol (SOAP) メッセージに以下の <KeyInfo> エレメントが生成されます。
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<wsse:SecurityTokenReference>
<wsse:KeyIdentifier ValueType="http://docs.oasis-open.org/wss/2004/01
/oasis-200401-wss-x509-token-profile-1.0#X509v3SubjectKeyIdentifier">
/62wXO...
</wsse:KeyIdentifier>
</wsse:SecurityTokenReference>
</ds:KeyInfo>
- 鍵名
- このセキュリティー・トークンは、トークン内の ID アサーションと一致する名前を
使用して参照されます。この鍵タイプを使用することはお勧めしません。指定した名前に複数のセキュリティー・トークンが一致する可能性があるためです。
この鍵情報タイプでは、SOAP メッセージに以下の <KeyInfo> エレメントが生成されます。
<ds:KeyInfo>
<ds:KeyName>CN=Group1</ds:KeyName>
</ds:KeyInfo>
一般に Key-Hashing Message
Authentication Code (HMAC) デジタル・シグニチャー・アルゴリズムを使用している場合は、
http://www.w3.org/2000/09/xmldsig#hmac-sha1 といった鍵名を使用します。
- セキュリティー・トークン参照
- セキュリティー・トークンは、URI を使用して直接参照されます。
この鍵情報タイプでは、SOAP メッセージに以下の <KeyInfo> エレメントが生成されます。
<ds:KeyInfo>
<wsse:SecurityTokenReference>
<wsse:Reference URI='#SomeCert'
ValueType="http://docs.oasis-open.org/wss/2004/01/
oasis-200401-wss-x509-token-profile-1.0#X509v3" />
</wsse:SecurityTokenReference>
</ds:KeyInfo>
- 組み込みトークン
- セキュリティー・トークンは、<SecurityTokenReference> エレメント内に
直接組み込まれます。この鍵情報タイプでは、SOAP メッセージに以下の <KeyInfo> エレメントが生成されます。
<ds:KeyInfo>
<wsse:SecurityTokenReference>
<wsse:Embedded wsu:Id=”tok1” />
…
</wsse:Embedded>
</wsse:SecurityTokenReference>
</ds:KeyInfo>
- X509 の発行者名および発行者シリアル
- セキュリティー・トークンは X.509 証明書の発行者名およびシリアル番号によって参照されます。
この鍵情報タイプでは、SOAP メッセージに以下の <KeyInfo> エレメントが生成されます。
<ds:KeyInfo>
<wsse:SecurityTokenReference>
<ds:X509Data>
<ds:X509IssuerSerial>
<ds:X509IssuerName>CN=Jones, O=IBM, C=US</ds:X509IssuerName>
<ds:X509SerialNumber>1040152879</ds:X509SerialNumber>
</ds:X509IssuerSerial>
</ds:X509Data>
</wsse:SecurityTokenReference>
</ds:KeyInfo>
鍵情報の各タイプは、http://www.oasis-open.org/home/index.php の Web サービス・セキュリティーのところにある、
Web Services Security: SOAP Message Security 1.0 (WS-Security 2004) OASIS standard に記述されています。
- 「鍵ロケーター参照」フィールドから鍵ロケーター参照を選択します。
このフィールドの値は、
鍵ロケーターへの参照であり、WebSphere Application Server
がデジタル署名および暗号化に使用する鍵を見付けるために使用します。
鍵ロケーターを選択する前に、鍵ロケーターを構成する必要があります。
鍵ロケーターの構成に関して詳しくは、アプリケーション・レベルでのコンシューマー・バインディングのための、
JAX-RPC による鍵ロケーターの構成
を参照してください。
- 「Token reference」フィールドからトークン参照を選択します。
トークン参照は、メッセージ内のセキュリティー・トークンを処理するために使用するトークン・コンシューマーへの参照を指定します。
しかし、WebSphere Application Server がこのフィールドを必要とするのは、「鍵情報タイプ」フィールドで 「Security token
reference」または「Embedded token」を選択する場合のみです。
トークン参照を指定する前に、トークン・コンシューマーを構成する必要があります。
トークン・コンシューマーの構成について詳しくは、アプリケーション・レベルでメッセージの認証性を保護するための、
JAX-RPC によるトークン・コンシューマーの構成
を参照してください。
この鍵情報構成にトークン・コンシューマーが必要ない場合は、「(なし)」を選択します。
- 「OK」および「保管」をクリックして、この構成を保管します。
結果
アプリケーション・レベルで要求バインディングまたは応答コンシューマー・バインディング (あるいは両方) の鍵情報が構成されました。
次の作業
ジェネレーター・バインディングの鍵情報を構成しなかった場合は、同様の鍵情報構成をそのジェネレーターに対して指定する必要が
あります。
コンシューマーおよびジェネレーターの両方に鍵情報を構成した後で、
署名情報または暗号化情報を構成しますが、ここでは、この鍵情報タスクで指定された鍵情報を参照します。