鍵ロケーターを構成する前に、どの鍵情報構成がこの鍵ロケーターを参照するかを知っておく必要があります。
例えば、この鍵ロケーターを 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」セクションを展開します。
- オプション: 「プロジェクト・エクスプローラー」ウィンドウを使用して、サーバー・サイドのバインディングを検索します。 「Web Services Editor」ウィンドウが表示されます。
この Web サービスには、ユーザーが構成する必要があるバインディングが含まれています。
- 「Web サービス」>「サービス」セクションの順に展開して、
Web サービスの名前をダブルクリックします。
- 「Binding Configurations」タブをクリックして、「Response Generator Binding Configuration Details」セクションを展開します。
- 「鍵ロケーター」セクションを展開して、新規項目を追加する場合は「追加」をクリックし、
選択した項目を編集する場合は「編集」をクリックします。
- 「Key locator name」フィールドで、この構成の名前を指定します。 この構成名は、「Key Information」ダイアログの「鍵ロケーター」フィールドで参照されます。
- 「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 type」フィールドから、鍵ストアのタイプを選択します。 選択する鍵ストア・タイプは、「Key store path」フィールドで指定された鍵ストア・ファイルと一致している必要があります。以下の鍵ストアのタイプがサポートされています。
- JKS
- Java™ Cryptography Extensions (JCE) を使用せず、鍵ストア・ファイルが Java Keystore (JKS) フォーマットを使用している場合は、このオプションを使用します。
- JCEKS
- Java Cryptography Extensions を使用している場合は、このオプションを使用します。
- PKCS11
- 鍵ストアが PKCS#11 ファイル形式を使用する場合は、この形式を使用します。この形式を使用する鍵ストアは、暗号ハードウェアについての RSA 鍵を含んでいるか、
暗号ハードウェアを使用する鍵を暗号化して、保護を確実なものにします。
- PKCS12
- 鍵ストアが PKCS#12 ファイル形式を使用する場合は、このオプションを使用します。
- 「鍵」フィールドの下にある「追加」をクリックして、
前のステップで指定した鍵ストア・ファイルから鍵項目を追加します。 この鍵は、シグニチャーの生成または暗号化に使用されます。
ここで指定する鍵は、コンシューマーの検証または暗号化解除に使用される鍵と一致している必要があります。
- 「別名」フィールドで、この鍵の別名を指定します。 鍵の別名は、鍵ロケーターが鍵ストア・ファイル内の鍵を探し出すときに使用されます。
- 「Key pass」フィールドで、この鍵に関連付けるパスワードを指定します。 このパスワードは、鍵ストア・ファイル内の鍵オブジェクトにアクセスする際に必要です。
- 「Key name」フィールドで鍵の名前を指定します。 デジタル・シグニチャーの場合、
メッセージのデジタル署名に使用される鍵を判別するために、
この鍵の名前が要求ジェネレーターまたは応答ジェネレーターの署名情報で使用されます。
暗号化の場合、この鍵の名前は、暗号化に使用される鍵を判別するために使用されます。
鍵の名前には、完全修飾識別名を指定する必要があります。
例えば、CN=Bob,O=IBM,C=US のように指定します。
- 「OK」をクリックして構成を保管します。