アセンブリー・ツールを使用して、ジェネレーター用の鍵ロケーターを構成できます。
鍵ロケーターの目的は、デジタル・シグニチャーおよび暗号化のために、鍵ストアから鍵を検索することです。
要求ジェネレーターはクライアント用に構成され、
応答ジェネレーターはサーバー用に構成されます。
始める前に
このタスクを実行する前に、
アプリケーションをアセンブリー・ツールにインポートする必要があります。
アプリケーションをインポートする方法については、エンタープライズ・アプリケーションのインポートを参照してください。
鍵ロケーターを構成する前に、どの鍵情報構成がこの鍵ロケーターを参照するかを知っておく必要があります。
例えば、この鍵ロケーターを STRREF 鍵情報タイプ用に構成する場合は、
鍵ロケーター・クラス com.ibm.wsspi.wssecurity.keyinfo.KeyStoreKeyLocator を選択します。
このタスクについて
WebSphere Application Server バージョン 6 以降では、
デフォルトの鍵ロケーター・インプリメンテーションを使用することも、
独自のインプリメンテーションを作成することもできます。
カスタムの鍵ロケーターは、
com.ibm.wsspi.wssecurity.keyinfo.KeyLocator インターフェースをインプリメントしている必要があります。
このインプリメンテーションを使用すると、任意のデータ・ソース内の鍵を探し出すことができます。
以下のステップを実行します。ステップ 2 でのクライアント・サイドのバインディング、またはステップ 3 でのサーバー・サイドのバインディングを構成する必要があります。
プロシージャー
- アセンブリー・ツールを開始して、
「ウィンドウ」>「パースペクティブのオープン」>「J2EE」とクリックします。
- オプション: プロジェクト・エクスプローラー・ウィンドウで、クライアント側のバインディングを探します。
「Client Deployment Descriptor」ウィンドウが表示されます。
この Web サービスに、構成が必要なバインディングが含まれています。
- 「Web サービス」 > 「クライアント」セクションを展開し、Web サービスの名前をダブルクリックします。
- 「WS Binding」タブをクリックし、「Security Request
Generator Binding Configuration」セクションを展開します。
- オプション: 「Project Explorer」ウィンドウを使用して、サーバー・サイドのバインディングを見付けます。
「Web Services Editor」ウィンドウが表示されます。
この Web サービスに、構成が必要なバインディングが含まれています。
- 「Web サービス」>「サービス」セクションを展開し、Web サービスの名前をダブルクリックします。
- 「Binding Configurations」タブをクリックして、
「Response Generator Binding Configuration Details」セクションを展開します。
- 「鍵ロケーター」セクションを展開して、新規項目を追加する場合は「追加」をクリックし、
選択した項目を編集する場合は「編集」をクリックします。
- 「Key locator name」フィールドで、この構成の名前を指定します。
この構成名は、「鍵情報」ダイアログの「鍵ロケーター」フィールドで参照されます。
- 「Key locator class」フィールドで、鍵ロケーターのインプリメンテーションを選択します。
この鍵ロケーターを参照する鍵情報構成と一致する鍵ロケーター・クラスを選択してください。
バージョン 6 以降のアプリケーションでは、以下の鍵ロケーター・クラスのインプリメンテーションがデフォルトでサポートされています。
- com.ibm.wsspi.wssecurity.keyinfo.KeyStoreKeyLocator
- このインプリメンテーションは、指定した鍵ストア・ファイルから鍵を見つけて、これを取得します。
- com.ibm.wsspi.wssecurity.keyinfo.SignerCertKeyLocator
- このインプリメンテーションは、署名者の証明書から公開鍵を使用します。
このクラス・インプリメンテーションは、応答ジェネレーターによって使用されます。
- com.ibm.wsspi.wssecurity.keyinfo.X509TokenKeyLocator
- このインプリメンテーションは、デジタル・シグニチャーの妥当性検査および暗号化用に、
送信側メッセージからの X.509 セキュリティー・トークンを使用します。
このクラス・インプリメンテーションは、
要求コンシューマーおよび応答コンシューマーによって使用されます。
- 鍵ストアをこの鍵ロケーター用に構成する必要がある場合は、
「Use key store」オプションを選択します。
鍵ストア情報を鍵ロケーター用に構成する必要があるかどうかは、
鍵ロケーター・クラスとアプリケーション構成によって決まります。
例えば、前のステップで鍵ロケーター・クラス com.ibm.wsspi.wssecurity.keyinfo.KeyStoreKeyLocator を選択した場合は、
この鍵ロケーターに対して鍵ストア情報を構成してください。
- 「Key store storepass」フィールドで鍵ストアのパスワードを指定します。
鍵ストアの storepass は、鍵ストア・ファイルへのアクセスに必要なパスワードです。
- 「Key store path」フィールドで、鍵ストア・ファイルのパスを指定します。
鍵ストア・パスは、鍵ストアが置かれているディレクトリーです。
アプリケーションをどこにデプロイする場合でも、鍵ストア・ファイルを探し出せるようにしておいてください。
したがって、パス名に ${USER_INSTALL_ROOT} を使用することをお勧めします。
この変数は、ご使用のマシンの WebSphere Application Server のパスに展開されます。
- 「鍵ストア・タイプ」フィールドから鍵ストア・タイプを選択します。
ここで選択する鍵ストア・タイプは、
「Key store path」フィールドで指定した鍵ストア・ファイルと一致している必要があります。
サポートされている鍵ストア・タイプは、以下のとおりです。
- JKS
- Java Cryptography Extensions (JCE) ポリシー・ファイルを使用していない場合、
かつ鍵ストア・ファイルで Java Keystore (JKS) フォーマットを使用している場合は、このオプションを使用します。
- JCEKS
- このオプションは、Java Cryptography Extensions ポリシー・ファイルを使用している場合に使用します。
- JCERACFKS
- 証明書が SAF 鍵リング (z/OS のみ) に格納される場合は、JCERACFKS を使用します。
- PKCS11
- 鍵ストアが PKCS#11 ファイル・フォーマットを使用する場合、このフォーマットを使用します。このフォーマットを使用する鍵ストアには、
暗号ハードウェア上に RSA 鍵が含まれているか、暗号ハードウェアを使用する鍵を暗号化して保護を実行している可能性があります。
- PKCS12
- 鍵ストアが PKCS#12 ファイル・フォーマットを使用する場合、このオプションを使用します。
- 「鍵」フィールドの下にある「追加」をクリックして、
前のステップで指定した鍵ストア・ファイルから鍵項目を追加します。
この鍵は、シグニチャーの生成または暗号化に使用されます。
ここで指定する鍵は、コンシューマーの検証または暗号化解除に使用される鍵と一致している必要があります。
- 「別名」フィールドで、この鍵の別名を指定します。
鍵の別名は、鍵ロケーターが鍵ストア・ファイル内の鍵を探し出すときに使用されます。
- 「Key pass」フィールドで、この鍵に関連付けるパスワードを指定します。
このパスワードは、鍵ストア・ファイル内の鍵オブジェクトにアクセスする際に必要です。
- 「鍵の名前」フィールドで鍵の名前を指定します。
デジタル・シグニチャーの場合、
メッセージのデジタル署名に使用される鍵を判別するために、
この鍵名が要求ジェネレーターまたは応答ジェネレーターの署名情報で使用されます。
暗号化の場合、この鍵名は、暗号化に使用される鍵を判別するために使用されます。
鍵名には、完全修飾識別名を指定する必要があります。
例えば、CN=Bob,O=IBM,C=US のように指定してください。
- 「OK」をクリックして、構成を保管します。