保護されたプロパティーのサーバー間での共有

IBM® UrbanCode™ Deploy サーバー間で、保護されたプロパティーを持つアプリケーションを共有するには、それぞれのサーバーの暗号鍵ストアから得た鍵を交換します。

始める前に

Java™ keytool コマンドのロケーションが、サーバーの PATH 変数上にあることを確認してください。keytool アプリケーションは Java Developer Kit に組み込まれています。これは IBM UrbanCode Deploy の一部ではありません。

このタスクについて

保護されたプロパティーを持つアプリケーションを共有するには、サーバーの鍵をエクスポートし、その鍵を各ターゲット・サーバーにインポートします。このプロセスにより、エクスポートするサーバーからのアプリケーションが、他のサーバーで使用できるようになります。 共有するアプリケーションを持つサーバーごとに、このプロセスを繰り返します。

手順

  1. 最初のサーバーで、コマンド行ウィンドウを開き、サーバーのインストール済み環境の conf ディレクトリーに移動します。
  2. install/conf/server/installed.properties ファイル内で、encryption.keystore.alias プロパティーの値を検索します。 例えば、以下のコードには、abcdkey1234 という値が示されています。
    encryption.keystore=../アプリケーション・データ/conf/encryption.keystore
    encryption.keystore.alias=abcdkey1234
    以降のステップを実行するにはこの別名が必要です。
  3. 以下のコマンドを実行して、サーバー鍵を一時鍵ストアにインポートします。 このコマンドは 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 変数には、一時鍵ストアのパスワードを指定します。 このパスワードは、後で使用することになります。
  4. 一時鍵ストア (前述の例では temp.keystore という名前) を、2 番目のサーバー上の install/conf/ フォルダーにコピーします。
  5. 2 番目のサーバー上で、コマンド行ウィンドウを開き、サーバーのインストール済み環境の conf ディレクトリーに移動します。
  6. 以下のコマンドを実行して、一時鍵ストア内の鍵をサーバー鍵ストアにインポートします。 このコマンドは 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 パスワードには、現行サーバー鍵ストアのパスワードを指定します。
  7. 2 番目のサーバーを再始動します。
  8. オプション: 各サーバーから一時鍵ストア・ファイルを削除します。

タスクの結果

これで、最初のサーバー鍵ストアからの暗号鍵は、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,

次のタスク

このプロセスを繰り返し、他のサーバー間で鍵をコピーします。

フィードバック