サーバー・レベルで、
クライアント・サイドの要求ジェネレーターおよびサーバー・サイドの応答ジェネレーター・バインディングの署名情報を構成できます。
始める前に
サーバー・サイドの拡張ファイル (ibm-webservices-ext.xmi) および
クライアント・サイドのデプロイメント記述子拡張ファイル (ibm-webservicesclient-ext.xmi) では、
メッセージのどのパーツが署名されるかを指定する必要があります。
また、管理コンソール内の署名情報パネルで、鍵情報参照が参照する鍵情報を構成する必要があります。
このタスクについて
このタスクでは、サーバー・レベルまたはセル・レベルで、
クライアント・サイドの要求ジェネレーター・バインディングおよびサーバー・サイドの応答ジェネレーター・バインディングの署名情報を構成するために必要なステップについて説明します。
バインディングがアプリケーション・レベルで定義されていない場合、
WebSphere Application Server は、デフォルトのジェネレーターの署名情報を使用して、
本体、タイム・スタンプ、およびユーザー名トークンを含むメッセージのパーツに署名します。
アプリケーション・サーバーは、バインディングのデフォルト値を提供します。
しかし、管理者は実稼働環境に合わせてデフォルトを変更する必要があります。
以下のステップを実行して、
サーバー・レベルで、バインディング・ファイルのコンシューマー・セクションの署名情報を構成します。
プロシージャー
- サーバー・レベルのデフォルト・バインディングにアクセスします。
- 「サーバー」>「アプリケーション・サーバー」>「server_name」とクリックします。
- 「セキュリティー」の下の「Web サービス: Web サービス・セキュリティーの
デフォルト・バインディング」をクリックします。
- 「デフォルト・コンシューマー・バインディング」の下の「署名情報」をクリックします。
- 「新規」をクリックして署名情報構成を作成するか、
「削除」をクリックして既存の構成を削除するか、既存の署名情報構成の名前をクリックして、その設定を編集します。
新規構成を作成している場合は、「署名情報名」フィールドにその署名構成の固有の名前を入力します。
例えば、gen_signinfo などです。
- 「Signature method」フィールドからシグニチャー方式アルゴリズムを選択します。
デフォルトのコンシューマー用に指定されているアルゴリズムは、デフォルトのジェネレーター用に指定されているアルゴリズムと
一致している必要があります。
WebSphere Application Server は
次の事前構成済みアルゴリズムをサポートしています。
- 「Canonicalization method」フィールドから、正規化方式を選択します。
ジェネレーター用にユーザーが指定する正規化アルゴリズムは、
コンシューマー用のアルゴリズムと一致している必要があります。
WebSphere Application Server は、以下の構成済み規範的 XML および排他的 XML 正規化アルゴリズムをサポートしています。
- http://www.w3.org/2001/10/xml-exc-c14n#
- http://www.w3.org/2001/10/xml-exc-c14n#WithComments
- http://www.w3.org/TR/2001/REC-xml-c14n-20010315
- http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments
- 「鍵情報署名タイプ」フィールドから鍵情報シグニチャー・タイプを選択します。
鍵情報シグニチャー・タイプは、鍵をデジタル署名する方法を決定します。
WebSphere Application Server は以下のシグニチャー・タイプをサポートしています。
- なし
- KeyInfo エレメントが署名されないように指定します。
- Keyinfo
- KeyInfo エレメント全体が署名されるように指定します。
- Keyinfochildelements
- KeyInfo エレメントの子エレメントが署名されるように指定します。
コンシューマーの鍵情報シグニチャー・タイプは、
ジェネレーターのシグニチャー・タイプと一致している必要があります。
次の状態が発生する可能性があります。
- 上記のシグニチャー・タイプのいずれも指定しない場合、
WebSphere Application Server はデフォルトで keyinfo を使用します。
- Keyinfo または Keyinfochildelements を選択し、後続のステップで http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#STR-Transform を
変換アルゴリズムとして選択した場合、WebSphere Application Server は参照されるトークンにも署名します。
- 「OK」をクリックして、構成を保管します。
- 新規署名情報構成の名前をクリックします。
この構成は、前のステップでユーザーが指定したものです。
- 鍵情報参照、パーツ参照、ダイジェスト・アルゴリズム、および変換アルゴリズムを指定します。
- 「追加プロパティー」の下で、「鍵情報参照」
>「新規」とクリックして新規参照を作成するか、「鍵情報参照」>
「削除」とクリックして既存の参照を削除するか、参照名をクリックして既存の鍵情報参照を編集します。
- 「名前」フィールドに構成の名前を入力します。
例えば、con_skeyinfo のように入力します。
- 「鍵情報参照」フィールドから鍵情報参照を選択します。
鍵情報参照は、WebSphere Application Server がデジタル署名用に使用する鍵を指します。
バインディング・ファイルで、参照は <signingKeyInfo> エレメント内で指定されます。
署名に使用される鍵は、鍵情報エレメントによって指定され、署名情報と同じレベルに定義されます。
詳しくは、アプリケーション・レベルでのコンシューマー・バインディングの鍵情報の構成
を参照してください。
- 「OK」および「保管」をクリックして、構成を保管します。
- 「追加プロパティー」の下で、「パーツ参照」>「新規」とクリックして新規パーツ参照を作成するか、
「パーツ参照」>「削除」とクリックして既存のパーツ参照を削除するか、
パーツ名をクリックして、既存のパーツ参照を編集します。
パーツ参照は、メッセージのどのパーツをデジタル署名するかを指定します。
パーツ属性は、<PartReference> がデジタル・シグニチャーに対して指定されている場合、デプロイメント記述子の <RequiredIntegrity> エレメントの名前を参照します。
WebSphere Application Server により、
ユーザーは <SigningInfo> エレメントに対して複数の <PartReference> エレメントを指定することができます。
<PartReference> エレメントには
<DigestMethod> および <Transform> という 2 つの子エレメントがあります。
- このパーツ参照の固有のパーツ名を指定します。
例えば、reqint などです。
重要: アプリケーション・レベルで指定するように、「Part reference」フィールドの値を指定する必要はありません。これは、アプリケーション・レベルのパーツ参照が、署名されるメッセージの特定のパーツを指すためです。
サーバー・レベルのデフォルトのバインディングは、特定のサーバー上で定義されているすべてのサービスに適用できるため、
この値を指定することはできません。
- 「Digest method algorithm」フィールドでダイジェスト方式アルゴリズムを選択します。
<SigningInfo> エレメントで使用される <DigestMethod> エレメント内で指定されるダイジェスト方式アルゴリズム。
WebSphere Application Server は http://www.w3.org/2000/09/xmldsig#sha1 に示されたアルゴリズムをサポートしています。
- 「OK」および「保管」をクリックして、構成を保管します。
- 新規パーツ参照構成の名前をクリックします。
この構成は、前のステップでユーザーが指定したものです。
- 「追加プロパティー」の下で、「変換」>「新規」とクリックして新規変換を作成するか、
「変換」>「削除」とクリックして変換を削除するか、
変換名をクリックして、既存の変換を編集します。
新規変換構成を作成する場合は、固有の名前を指定します。
例えば、reqint_body_transform1 などです。
- メニューから変換アルゴリズムを選択します。
変換アルゴリズムは、<Transform> エレメント内で指定されます。
ここでは、シグニチャーの変換アルゴリズムを指定します。
WebSphere Application Server は、以下のアルゴリズムをサポートしています。
- http://www.w3.org/2001/10/xml-exc-c14n#
- http://www.w3.org/TR/1999/REC-xpath-19991116
- http://www.w3.org/2002/06/xmldsig-filter2
- http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#STR-Transform
- http://www.w3.org/2002/07/decrypt#XML
- http://www.w3.org/2000/09/xmldsig#enveloped-signature
コンシューマー用にユーザーが選択する変換アルゴリズムは、
ジェネレーター用に選択する変換アルゴリズムと一致している必要があります。
重要: 以下の条件が両方とも真である場合、WebSphere Application Server は参照されるトークンに署名します。
- 以前、「署名情報」パネルの「鍵情報署名タイプ」フィールドから、
Keyinfo または Keyinfochildelements オプションを選択した。
- 変換アルゴリズムとして http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#STR-Transform を選択する。
- 「OK」をクリックします。
- パネル上部の「保管」をクリックして、構成を保管します。
結果
これらのステップが完了すると、サーバー・レベルまたはセル・レベルでの
コンシューマーの署名情報が構成されます。
次の作業
ジェネレーターに対しても、同様の署名情報構成を指定する必要があります。