Talend Studioでの暗号化キーのローテーション化 - 7.3

Windows版Talend Big Dataインストールガイド

EnrichVersion
7.3
EnrichProdName
Talend Big Data
task
インストールとアップグレード
EnrichPlatform
Talend Activity Monitoring Console
Talend Administration Center
Talend Artifact Repository
Talend CommandLine
Talend Data Preparation
Talend Data Stewardship
Talend Identity and Access Management
Talend Installer
Talend JobServer
Talend Log Server
Talend Runtime
Talend Studio

パスワード暗号化のため、Talend StudioTalend Administration CenterTalendの各コンポーネントで次の2つの暗号化キーが使用されるようになりました。

  • system.encryption.key: プロパティとNexusパスワードの暗号化用
  • routine.encryption.key: 生成されたジョブのパスワードの暗号化用

2つのキー(system.encryption.key.v1routine.encryption.key.v1)のデフォルト値は、暗号化キー設定ファイルである\configuration\studio.keysに保存されています。このファイルは、Talend Studio実行ファイルであるTalend-Studio-win-x86_64.exeを初めて実行した後にTalend Studioのインストールディレクトリーに作成されます。以下は、新しく作成されたstudio.keysファイルの例です。

system.encryption.key.v1=ObIr3Je6QcJuxJEwErWaFWIxBzEjxIlBrtCPilSByJI\=
routine.encryption.key.v1=YBoRMn8gwD1Kt3CcowOiGeoxRbC2eNNVm7Id6vA3hrk\=

Talendでは、デフォルト値を削除してTalend Studioを再起動することにより、プロジェクトにログオンする前にシステム暗号化キーのデフォルト値(上の例ではObIr3Je6QcJuxJEwErWaFWIxBzEjxIlBrtCPilSByJI\=)を一度だけ変更できます。ルーチン暗号化キーのデフォルト値は変更できません。プロジェクトに既にログオンしている場合、Talendでは、暗号化キー設定ファイルにそのキーの新しいバージョンを追加して暗号化キーをローテーション化できます。

注:
  • システム暗号化キーの新しいバージョンがジョブで有効となるのは、そのジョブを変更して保存した後のみです。
  • ジョブは単一のJVMで実行されるため、Talend Studio用にルーチン暗号化キーをローテーション化した後は、すべてのジョブでJVMを更新することも必要です。

このタスクについて

暗号化キーは次の手順でローテーション化します。

手順

  1. Talend Studioのインストールディレクトリーで\configuration\studio.keysキー設定ファイルを開きます。
  2. 次の行を追加し、値を空にして暗号化キーの新しいバージョンを追加します。
    • システム暗号化キーの場合:
      system.encryption.key.v<version_number>=
    • ルーチン暗号化キーの場合:
      routine.encryption.key.v<version_number>=

    <version_number>には新しい暗号化キーのバージョンを表す単純な整数が入りますが、これは既存のバージョン番号よりも大きくなります。例:

    system.encryption.key.v2=
    routine.encryption.key.v2=
    警告: 暗号化キーの前のバージョンのうち、パスワードの暗号化で既に使用されてきたものは削除しないでください。
  3. キー設定ファイルを保存してTalend Studioを再起動します。
    暗号化キー値の新しいバージョンが生成され、キー設定ファイルに保存されます。
  4. ルーチン暗号化キーをローテーション化している場合は、Talend StudioにあるすべてのジョブについてJVM引数設定を更新してください。
    1. メニューバーで、[Window] (ウィンドウ) > [Preferences] (環境設定)の順にクリックし、[Preferences] (環境設定)ダイアログボックスを開きます。
    2. [Talend]ノードを展開して[Run/Debug] (実行/デバッグ)をクリックします。
    3. [Job Run VM arguments] (ジョブ実行VMの引数)エリアで[New...] (新規...)をクリックします。
    4. [Set the VM Argument] (VM引数の設定)ダイアログボックスで次の引数を設定します。
      -Dencryption.keys.file=<studio_key_path>

      <studio_key_path>にはTalend Studio暗号化キー設定ファイルへの絶対パス(D:\Talend-Studio\configuration\studio.keysなど)が入ります。

      注: Talend JobServerでジョブが実行された場合は、キー設定ファイルをサーバーにコピーすることと、そのサーバー上のパスのディレクトリー構造がTalend Studioのインストール先であるクライアントマシン上のものと同じであることが必要です。
    5. [OK]をクリックして[Set the VM Argument] (VM引数の設定)ダイアログボックスを閉じます。
    6. [Apply and Close] (適用して閉じる)をクリックし、変更を保存して[Preferences] (環境設定)ダイアログボックスを閉じます。
  5. リモートオブジェクトを使用している場合は、Talend Administration Centerにも同じ暗号化キーを設定します。
    1. Talend Administration Centerのインストール先サーバーのディレクトリー(D:\StudioKeysなど)にstudio.keysキー設定ファイルをコピーします。
    2. Talend Administration Centerのインストールディレクトリーで<TomcatPath>\bin\catalina.batファイルを開きます。
    3. ファイルの最初に次の行を追加します:
      set JAVA_OPTS="-Dencryption.keys.file=D:\StudioKeys\studio.keys"
  6. ジョブがTalend Administration CenterのJob Conductorで実行されている場合は、Talend Administration Centerでの該当タスク用にJVMパラメーターを設定します。
    Talend Administration CenterでのJVMパラメーターの詳しい設定方法は、https://help.talend.com/access/sources/content/topic?pageid=set_jvm_parameters_for_specific_tasks_in_tac&EnrichVersion=7.3&afs:lang=jaを参照してください。
    注: Talend JobServerでジョブが実行された場合は、キー設定ファイルをTalend JobServerにコピーすることと、Talend JobServer上のパスのディレクトリー構造がTalend Administration CenterのJVMパラメーターで指定されているものと同じであることが必要です。
  7. 再設定した項目があれば、Talend Administration Centerを再起動します。