鍵情報は、デジタル・シグニチャーおよび暗号化用の鍵の生成に必要な構成を指定する場合に使用します。
署名情報と暗号化情報の構成は鍵情報を共有することができますが、これは、両方の構成が同じレベルで定義されているためです。
始める前に
このタスクを開始する前に、鍵情報パネルで「鍵ロケーター参照」フィールドと「Token reference」フィールドによって参照される、
鍵ロケーターとトークン・コンシューマーを構成します。
このタスクについて
ベスト・プラクティス: WebSphere Application Server Version
6.1 Feature Pack for Web Services は、本製品の機能を拡張して、Java API for XML-Based Web Services (JAX-WS) 2.0 の
プログラミング・モデルを導入できるようにします。
JAX-WS は、次世代の Web サービス・プログラミング・モデルであり、
Java API for XML-based RPC (JAX-RPC) プログラミング・モデルが提供する
基盤を提供します。戦略的 JAX-WS プログラミング・モデルを使用すると、
標準ベースの注釈モデルのサポートによって、Web サービスおよび Web クライアントの開発が
容易になります。
JAX-RPC プログラミング・モデルとアプリケーションは
引き続きサポートされますが、Web サービス・アプリケーションおよびクライアントを
新規に開発する場合は、
実装が容易な JAX-WS プログラミング・モデルをご利用ください。bprac
このタスクでは、
アプリケーション・レベルでの要求ジェネレーター (クライアント・サイド) と応答ジェネレーター (サーバー・サイド) バインディングのための鍵情報を構成するために必要なステップを実行します。
次のステップを実行して、アプリケーション・レベルのジェネレーター・バインディングの鍵情報を構成します。
プロシージャー
- 管理コンソールで鍵情報構成パネルを見付けます。
- 「アプリケーション」>「エンタープライズ・アプリケーション」>「application_name」とクリックします。
- 「モジュールの管理」の下で、「URI_name」をクリックします。
- 「Web サービス・セキュリティー・プロパティー」では、要求ジェネレーター・バインディングおよび応答ジェネレーター・バインディングの鍵情報にアクセスできます。
- 要求ジェネレーター (送信側) バインディングについては、「Web サービス:
クライアント・セキュリティーのバインディング」をクリックします。
「要求ジェネレーター (送信側) バインディング」の下の「カスタムの編集」をクリックします。
- 応答ジェネレーター (送信側) バインディングについては、「Web サービス:
サーバー・セキュリティーのバインディング」をクリックします。
「応答ジェネレーター (送信側) バインディング」の下の「カスタムの編集」をクリックします。
- 「必須プロパティー」の下の「鍵情報」をクリックします。
- 「新規」をクリックして鍵情報構成を作成するか、
既存の構成の横にあるボックスを選択して「削除」をクリックしてその構成を削除するか、
既存の署名情報構成名をクリックして、その設定を編集します。
新規構成を作成する場合は、「鍵情報名」フィールドに名前を入力します。
例えば、gen_signkeyinfo などです。
- 「鍵情報タイプ」フィールドから鍵情報タイプを選択します。
鍵情報タイプは、セキュリティー・トークンの参照方法を指定します。
WebSphere Application Server では以下の鍵情報タイプをサポートしています。
- 鍵 ID
- このセキュリティー・トークンは、一意的にトークンを識別する隠された値を使用して参照されます。
<KeyIdentifier> エレメント値を生成するために使用されるアルゴリズムは、トークン・タイプに依存します。
例えば、セキュリティー・トークンの重要なエレメントのハッシュは、<KeyIdentifier> エレメント値を生成するために使用します。
この鍵情報タイプでは、Simple Object Access Protocol (SOAP) メッセージに以下の <KeyInfo> エレメントが生成されます。
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<wsse:SecurityTokenReference>
<wsse:KeyIdentifier ValueType="wsse:X509v3">/62wXO...</wsse:KeyIdentifier>
</wsse:SecurityTokenReference>
</ds:KeyInfo>
- 鍵名
- このセキュリティー・トークンは、トークン内の ID アサーションと一致する名前を
使用して参照されます。この鍵タイプを使用することはお勧めしません。指定した名前に複数のセキュリティー・トークンが一致する可能性があるためです。
この鍵情報タイプでは、SOAP メッセージに以下の <KeyInfo> エレメントが生成されます。
<ds:KeyInfo>
<ds:KeyName>CN=Group1</ds:KeyName>
</ds:KeyInfo>
- セキュリティー・トークン参照
- セキュリティー・トークンは、URI を使用して直接参照されます。
この鍵情報タイプでは、SOAP メッセージに以下の <KeyInfo> エレメントが生成されます。
<ds:KeyInfo>
<wsse:SecurityTokenReference>
<wsse:Reference URI="#mytoken" />
</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 が使用する鍵ロケーターを指定します。
鍵ロケーターを選択する前に、鍵ロケーターを構成しておく必要があります。
鍵ロケーターの構成について詳しくは、以下の項目を参照してください。
- 「鍵の取得」をクリックして鍵名参照のリストを表示します。
「鍵の取得」をクリックすると、sig_klocator エレメントで定義した鍵名が鍵名参照メニューに表示されます。
鍵ロケーター参照を変更する場合は、再度「鍵の取得」をクリックして新しい鍵ロケーターに関連付けられた鍵名のリストを表示します。
- 「鍵名参照」フィールドから鍵名参照を選択します。
この参照は、デジタル・シグニチャーの生成および暗号化に使用する鍵名を指定します。
提供される鍵名のリストは、鍵ロケーター参照で指定した鍵ロケーターからきています。
- 「Token reference」フィールドからトークン参照を選択します。
このトークン参照は、セキュリティー・トークンの処理に使用されるトークン・ジェネレーターの名前を指定します。
しかし、WebSphere Application Server がこのフィールドを必要とするのは、「鍵情報タイプ」フィールドで 「Security token
reference」または「Embedded token」を選択する場合のみです。
トークン参照を指定する前に、トークン・ジェネレーターを構成する必要があります。
トークン・ジェネレーターの構成について詳しくは、アプリケーション・レベルでメッセージの認証性を保護するための、
JAX-RPC によるトークン・ジェネレーターの構成
を参照してください。
- オプション: このパネルで鍵情報タイプとして「鍵 ID」を選択する場合は、
エンコード方式、計算方式、値タイプのネーム・スペース URI、および値タイプのローカル名を指定する必要があります。
- 「エンコード方式」フィールドからエンコード方式を選択します。
エンコード方式は、鍵 ID のエンコード・フォーマットを指定します。
WebSphere Application Server は、以下のエンコード方式をサポートします。
- http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary
- http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#HexBinary
- 「Calculation method」フィールドから計算方式を選択します。
WebSphere Application Server は、以下の計算方式をサポートします。
- http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#ITSHA1
- http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#IT60SHA1
- 「Namespace URI」フィールドに値タイプのネーム・スペース URI を指定します。
このフィールドに、鍵 ID によって参照されるセキュリティー・トークン用の値タイプのネーム・スペース URI を指定します。
X.509 証明書トークンを指定する場合、このオプションを指定する必要はありません。
別のトークンを指定したい場合は、値タイプの修飾名 (QName) の URI を指定する必要があります。
- 値タイプのローカル名を指定します。
この名前は、鍵 ID によって参照されるセキュリティー・トークンの値タイプのローカル名です。
このローカル名が対応するネーム・スペース URI と共に使用される場合、情報は、値タイプ修飾名または QName と呼ばれます。
X.509 証明書トークンを指定する場合、事前定義ローカル名を使用することをお勧めします。
事前定義ローカル名を指定する場合、値タイプのネーム・スペース URI を指定する必要はありません。
しかし、事前定義ローカル名を使用しない場合は、URI とローカル名の両方を指定する必要があります。
WebSphere Application Server には以下の事前定義ローカル名が用意されています。
- X.509 証明書トークン
- http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3
- PKIPath 内の X.509 証明書
- http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509PKIPathv1
- PKCS#7 内の X509 証明書および CRL のリスト
- http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#PKCS7
- LTPA
- Lightweight Third-Party Authentication トークン。LTPA の値のタイプのローカル名を指定するとき、http://www.ibm.com/websphere/appserver/tokentype/5.0.2 のネーム・スペース URI も指定する必要があります。
- LTPA_PROPAGATION
- Lightweight Third-Party Authentication 伝搬トークン。LTPA_PROPAGATION の値のタイプのローカル名を指定するとき、http://www.ibm.com/websphere/appserver/tokentype
のネーム・スペース URI も指定する必要があります。
- 「OK」をクリックしてから「保管」をクリックして、構成を保管します。
結果
アプリケーション・レベルでジェネレーター・バインディングの鍵情報が構成されました。
次の作業
コンシューマー用に同様の鍵情報構成を指定する必要があります。