署名者証明書をあるサーバーの trust.p12 ファイルに追加して、
そのサーバーが別のサーバーと安全に通信できるようにすることができます。
これを行うには、ssl.client.props ファイルに変更を加えた後で、
retrieveSigners コマンドを使用して、署名者をサーバーの trust.p12 ファイルに追加します。
始める前に
クライアントとして通信するサーバーは、
サーバー間のトラストが確立する前に、識別される必要があります。
ssl.client.props ファイルに変更を加え、クライアントとして通信するサーバー上で
retrieveSigners コマンドを実行します。
両サーバーがクライアントとして動作する場合は、
これらのステップは両サーバーに必要になります。
このタスクについて
ssl.client.props ファイルは、デフォルトでは、
Secure Socket Layer (SSL) 通信をクライアント用に構成するようにセットアップされます。これにより、
retrieveSigners コマンドのデフォルトの動作で、
profile_root/etc
ディレクトリーにある、クライアントの
trust.p12 ファイルおよび
key.p12 ファイルを扱うようになります。
署名者証明書をあるサーバーの
trust.p12 ファイルに追加して、
そのサーバーが別のサーバーと通信するクライアントとして動作できるようにすることができます。
retrieveSigners コマンドを使用して署名者をサーバーの
trust.p12 ファイルに追加するには、
ssl.client.props ファイルに何らかの変更を加える必要があります。
手順
- ssl.client.props ファイルを開きます。 ssl.client.props ファイルは、
profile_root/properties
ディレクトリーにあります。
- com.ibm.ssl.alias=AnotherSSLSettings プロパティーを使用して開始する
ssl.client.props のセクションのコメントを外します。
- com.ibm.ssl.trustStoreName=AnotherTrustStore プロパティーを使用して開始する
ssl.client.props のセクションのコメントを外します。
- 署名者を追加するトラストストアのロケーションを入力します。 デプロイメント・マネージャーにサーバーのトラストストアを使用している場合は、
そのロケーションは、
profile_root/config/cells/cell name/trust.p12 になります。アプリケーション・サーバーにトラストストアを使用している場合は、そのロケーションは、profile_root/config/cells/cell name/nodes/node name/trust.p12 になります。
- 使用するトラストストアに関連付けられている値を使用して、このセクションにある残りのプロパティーを更新します。 プロパティーの説明は、
ssl.client.props
クライアント構成ファイルにあります。
- オプション: com.ibm.ssl.trustStoreName=AnotherKeyStore プロパティーを使用して開始するセクションを、アンコメントして更新します。 大部分のシナリオでは、トラストストアに追加する署名者のみを必要とします。
この例では、トラストストアに署名者のみを追加していますが、
ステップ 3 から ステップ 5 までで行ったようにプロパティーを更新することで、鍵ストアに署名者を追加することもできます。
- ssl.client.props に行った変更内容を保存します。
- retrieveSigners コマンドを実行します。 詳しくは、retrieveSigners コマンドのページを参照してください。
retrieveSigners NodeDefaultTrustStore AnotherTrustStore -host ademyers.austin.ibm.com -port 8879
出力例: CWPKI0308I: Adding signer alias "default_1" to local keystore
"AnotherTrustStore" with the following SHA digest:
F4:71:97:79:3E:C1:DC:E7:9F:8F:3D:F0:A0:15:1E:D1:44:73:2C:06
タスクの結果
ステップが正常に完了すると、クライアントとして動作するサーバーは、他のサーバーの署名証明書を所有することになります。
これにより、そのサーバーは、他のサーバーへの SSL 接続を確立することができます。
例
例では、
ssl.client.props ファイルの変更されたセクションを示しています。この例の場合、サーバーの
trust.p12 ファイルが使用されていると仮定します。
既存のどのトラストストアでも、そのトラストストアのプロパティーが提供されていれば使用できます。
#-------------------------------------------------------------------------
com.ibm.ssl.alias=AnotherSSLSettings
com.ibm.ssl.protocol=SSL_TLS
com.ibm.ssl.securityLevel=HIGH
com.ibm.ssl.trustManager=IbmX509
com.ibm.ssl.keyManager=IbmX509
com.ibm.ssl.contextProvider=IBMJSSE2
com.ibm.ssl.enableSignerExchangePrompt=true
#com.ibm.ssl.keyStoreClientAlias=default
#com.ibm.ssl.customTrustManagers=
#com.ibm.ssl.customKeyManager=
#com.ibm.ssl.dynamicSelectionInfo=
#com.ibm.ssl.enabledCipherSuites=
# KeyStore information
#com.ibm.ssl.keyStoreName=AnotherKeyStore
#com.ibm.ssl.keyStore=${user.root}/etc/key.p12
#com.ibm.ssl.keyStorePassword={xor}CDo9Hgw=
#com.ibm.ssl.keyStoreType=PKCS12
#com.ibm.ssl.keyStoreProvider=IBMJCE
#com.ibm.ssl.keyStoreFileBased=true
# TrustStore information
com.ibm.ssl.trustStoreName=AnotherTrustStore
com.ibm.ssl.trustStore=${user.root}/config/cells/localhostCell01/trust.p12
com.ibm.ssl.trustStorePassword={xor}CDo9Hgw=
com.ibm.ssl.trustStoreType=PKCS12
com.ibm.ssl.trustStoreProvider=IBMJCE
com.ibm.ssl.trustStoreFileBased=true
次のタスク
署名者が追加されたら、
ssl.client.props ファイルを編集して、
署名者証明書の追加に使用されたセクションをコメント化します。