署名者証明書暗号化のためのポリシー・セットおよびバインディングの構成
この手順では、署名者証明書暗号化のための JAX-WS コンシューマー/プロバイダーの構成方法を説明します。署名者証明書暗号化は、インバウンド要求メッセージのデジタル署名を検証するために使用されるクライアントのパブリック証明書が、アウトバウンド応答の暗号化に使用されることを意味します。
始める前に
このタスクでは、構成しているサービス・プロバイダーとクライアントが、JaxWSServicesSamples アプリケーション内にあることを想定しています。このアプリケーションの取得およびインストール方法について詳しくは、トピック『サンプルへのアクセス』を参照してください。
サーバーで以下のトレース仕様を使用します。
これらの仕様により、今後発生する可能性がある構成の問題をデバッグできます。
*=info:com.ibm.wsspi.wssecurity.*=all:com.ibm.ws.webservices.wssecurity.*=all: com.ibm.ws.wssecurity.*=all:
com.ibm.xml.soapsec.*=all: com.ibm.ws.webservices.trace.*=all:
com.ibm.ws.websvcs.trace.*=all:com.ibm.ws.wssecurity.platform.audit.*=off:
com.ibm.ws.webservices.multiprotocol.AgnosticService=all:
com.ibm.ws.websvcs.utils.SecurityContextMigrator=all
このタスクについて
この手順では、署名者証明書暗号化が使用されるため、クライアントのデジタル署名鍵ストアのみが使用されます。このサービスは、インバウンド要求から署名の検証に使用されるパブリック証明書を取得し、 それを使用して応答を暗号化します。プロバイダー側では、これを行うために、プロバイダーの暗号化ジェネレーターでカスタム・プロパティー com.ibm.wsspi.wssecurity.token.cert.useRequestorCert=true が使用されます。
この手順で使用される鍵ストアは WebSphere Application Server で用意されるもので、作成される各プロファイルにインストールされます。${USER_INSTALL_ROOT} 変数を構成内で直接使用すると、
完全修飾パスを使用しなくても、鍵ストアの場所を簡単にポイントできます。${USER_INSTALL_ROOT} は、c:/WebSphere/AppServer/profiles/AppSrv01 などのパスに解決されます。
${USER_INSTALL_ROOT}/etc/ws-security/samples/dsig-sender.ks
JaxWSServicesSamples の性質により、このアプリケーションにポリシー・セットおよびバインディングを適用するには、管理コンソールで
とクリックします。独自のアプリケーションを使用する場合は、以下のパスを代替手段として使用して、ポリシー・セットおよびバインディングの関連付けの対象となるプロバイダーおよびクライアントにアクセスすることができます。この手順では、タスクを単純化するために以下を行います。
- アウトバウンド・デジタル署名およびインバウンド暗号化のみが構成されます。
- クライアントとプロバイダーの両方で汎用バインディングが使用されます。

このタスクを完了した後、戻って、作成した汎用バインディングを編集する必要がある場合は、更新内容を保存した後にアプリケーション・サーバーの再始動が必要です。汎用バインディングを作成して、アプリケーション・サーバーを再始動せずに、すぐに使用することもできますが、 汎用バインディングがアプリケーションによっていったんロードされたら、それ以降にバインディングに加えた変更はサーバーが再始動されるまで認識されません。
gotcha