IBM® UrbanCode Deploy サーバーとエージェントの間で、保護されたプロパティーを持つアプリケーションを共有するには、あるいは相互認証を構成するには、それぞれのサーバーまたはエージェントの暗号鍵ストアから得た鍵を交換します。
始める前に
Java™
keytool コマンドのロケーションが、
サーバーの
PATH 変数上にあることを確認してください。
このタスクについて
保護されたプロパティーを持つアプリケーションを共有するには、 サーバーの鍵をエクスポートし、その鍵を各ターゲット・サーバーにインポートします。このプロセスにより、エクスポートするサーバーからのアプリケーションが、
他のサーバーで使用できるようになります。
共有するアプリケーションを持つサーバーごとに、このプロセスを繰り返します。
手順
- 最初のサーバーで、コマンド・ライン・ウィンドウを開き、サーバー・インストール済み環境の conf ディレクトリーに移動します。
- install/conf/server/installed.properties ファイル内で、 encryption.keystore.alias プロパティーの値を検索します。 例えば、以下のコードには、abcdkey1234 という値が示されています。
encryption.keystore=../conf/encryption.keystore
encryption.keystore.alias=abcdkey1234
この別名は以降のステップで必要になります。
- 以下のコマンドを実行して、サーバー鍵を一時鍵ストアにインポートします。 このコマンドは 1 行で入力する必要があります。
keytool -importkeystore -srckeystore encryption.keystore
-srcstorepass srcPassword
-srcstoretype jceks
-alias alias
-destkeystore temp.keystore
-deststorepass tempPassword
-deststoretype jceks
- srcPassword には、サーバー鍵ストアのパスワードを指定します。デフォルトのパスワードは changeit です。
- alias には、encryption.keystore.alias プロパティーの値を指定します。
- tempPassword には、一時鍵ストアのパスワードを指定します。このパスワードは、後で必要になります。
- 一時鍵ストア (前述の例では temp.keystore という名前) を、
2 番目のサーバー上の install/conf/ フォルダーにコピーします。
- 2 番目のサーバー上で、コマンド・ライン・ウィンドウを開き、そのサーバーのインストール済み環境の conf ディレクトリーに移動します。
- 以下のコマンドを実行して、一時鍵ストア内の鍵をサーバー鍵ストアにインポートします。 このコマンドは 1 行で入力する必要があります。
keytool -importkeystore -srckeystore temp.keystore
-srcstorepass tempPassword
-srcstoretype jceks
-alias alias
-destkeystore encryption.keystore
-deststorepass destPassword
-deststoretype jceks
- tempPassword には、一時鍵ストアのパスワードを指定します。
- alias には、現行のサーバーではなく、最初のサーバーの encryption.keystore.alias プロパティーを指定します。
- destPassword には、現行のサーバー鍵ストアのパスワードを指定します。
- オプション: 各サーバーから一時鍵ストア・ファイルを削除します。
タスクの結果
これで、最初のサーバー鍵ストアからの暗号鍵は、2 番目のサーバー鍵ストアに存在します。この結果、2 番目のサーバーは、最初のサーバーからのアプリケーションを暗号化解除することができます。
2 番目のサーバー鍵ストアにその鍵があることは、2番目のサーバー上で以下のコマンドを実行することによって検証することができます。
keytool -list -keystore encryption.keystore
-storepass password
-storetype jceks
password には、サーバー鍵ストアのパスワードを使用します。
このコマンドによって、サーバー鍵ストア内の鍵がリストされます。鍵が正常にコピーされていれば、このリストには、少なくとも 2 つの鍵が含まれます。つまり各サーバーから 1 つずつです。
これらの鍵は、各サーバーの
encryption.keystore.alias プロパティーに従ってリストされます。例えば、以下の出力には 2 つの鍵が表示されています。
Keystore type: jceks
Keystore provider: IBMJCE
Your keystore contains 2 entries
efghkey5678, Oct 15, 2013, SecretKeyEntry,
abcdkey1234, Nov 22, 2013, SecretKeyEntry,
次のタスク
このプロセスを繰り返し、他のサーバー間で鍵をコピーします。