Talend Studio、Talend Administration Center、Talendの各コンポーネントでは、AES GCM 256によるパスワードの暗号化および復号化に暗号化キーが2つ使用されるようになりました。
-
system.encryption.key
: Nexusパスワード、そしてconnection_user.propertiesファイルと<jobname>_<jobversion>.itemジョブプロパティファイル内のパスワードを暗号化および復号化します。同じプロジェクトで作業しているすべてのStudioユーザーには同じシステム暗号化キーがある必要があります。
-
routine.encryption.key
: ジョブをビルド中および実行中に、パスワードを暗号化および復号化します。
警告: Talendは、1つのStudioでキーをローテーション化し、必要に応じてTalend Administration CenterおよびTalend JobServerに新しいキーをデプロイした後に新しいキーを他のStudioに配布することを強くお勧めします。
2つのキー(system.encryption.key.v1とroutine.encryption.key.v1)のデフォルト値は、暗号化キー設定ファイルである /configuration/studio.keysに保存されています。このファイルは、Talend Studioの実行ファイルである Talend-Studio-macosx-cocoa.appを初めて実行した後に、Talend Studioのインストールディレクトリーの下に作成されます。以下は、新しく作成されたstudio.keysファイルの例です。
system.encryption.key.v1=ObIr3Je6QcJuxJEwErWaFWIxBzEjxIlBrtCPilSByJI\=
routine.encryption.key.v1=YBoRMn8gwD1Kt3CcowOiGeoxRbC2eNNVm7Id6vA3hrk\=
パスワードの暗号化および復号化にデフォルトのシステム暗号化キーが使用されない場合は、そのデフォルト値(上記の例では、ObIr3Je6QcJuxJEwErWaFWIxBzEjxIlBrtCPilSByJI\=
)を削除して、Talend Studioを再起動すると、その値を変更できます。
ルーチン暗号化キーのデフォルト値は変更できません。プロジェクトに既にログオンしている場合、Talendでは、暗号化キー設定ファイルにそのキーの新しいバージョンを追加して暗号化キーをローテーション化できます。
システム暗号化キーの新しいバージョンがジョブで有効となるのは、そのジョブを変更して保存した後のみです。
継続的インテグレーションを使用する際に暗号化キーをローテーションする必要がある場合は、-Dstudio.encryption.keys.fileパラメーターを使って暗号化キー設定ファイルへのパスを指定できます。詳細は、ビルドとデプロイをご覧ください。
このタスクについて
暗号化キーは次の手順でローテーション化します。
手順
-
Talend Studioのインストールディレクトリーの下の /configuration/studio.keysというキー設定ファイルを開きます。
-
次の行を追加し、値を空にして暗号化キーの新しいバージョンを追加します。
<version_number>
には新しい暗号化キーのバージョンを表す単純な整数が入りますが、これは既存のバージョン番号よりも大きくなります。例:
system.encryption.key.v2=
routine.encryption.key.v2=
警告: 暗号化キーの前のバージョンのうち、パスワードの暗号化で既に使用されてきたものは削除しないでください。
-
キー設定ファイルを保存してTalend Studioを再起動します。
暗号化キー値の新しいバージョンが生成され、キー設定ファイルに保存されます。
-
ルーチン暗号化キーをローテーション化しており、ジョブがTalend JobServerで実行される場合は、Talend JobServerがインストール済みであるサーバーでディレクトリーにTalend Studioのキー設定ファイルをコピーして、Talend JobServerで
-Dencryption.keys.file
というJVMパラメーターを設定します。
-
リモートプロジェクトで作業しながらシステム暗号化キーをローテーション化している場合は、Talend Administration Center用に同じ暗号化キーを設定します。
-
Talend Administration Centerがインストール済みであるサーバーで、Talend Studioのキー設定ファイルをディレクトリー(たとえば D:/StudioKeys)にコピーします。
-
Talend Administration Centerのインストールディレクトリーの下の <TomcatPath>/bin/catalina.shというファイルを開きます。
-
ファイルの最初に次の行を追加します:
JAVA_OPTS="-Dencryption.keys.file=/d/StudioKeys/studio.keys"
-
ルーチン暗号化キーをローテーション化しており、ジョブがジョブコンダクターからTalend Administration Centerで実行される場合は、Talend Administration Centerがインストール済みであるサーバーでディレクトリーにTalend Studioのキー設定ファイルをコピーして、Talend Administration Centerで対応するタスクに対して
-Dencryption.keys.file
というJVMパラメーターを設定します。
-
再設定した項目があれば、Talend Administration Centerを再起動します。