顧客管理の暗号鍵(CMEK)の使用

顧客管理の暗号鍵(CMEK)を使用すると、Cloud Data Fusion パイプラインによって書き込まれるデータを、ユーザーが管理できます。これらのデータには以下が含まれます。

  • Dataproc クラスタ メタデータ
  • Cloud Storage、BigQuery、Pub/Sub のデータソースとデータシンク

このページでは、Cloud Data Fusion で Cloud Key Management Service(Cloud KMS)の暗号鍵を使用する方法を説明します。顧客管理の暗号鍵(CMEK)を使用すると、Cloud KMS で管理可能な鍵で保存データを暗号化できます。CMEK で保護されたパイプラインを作成できます。また、ソースとシンクで CMEK によって保護されたデータにアクセスできます。

Cloud Data Fusion のリソース

Cloud Data Fusion では、次の Cloud Data Fusion プラグインで顧客管理の暗号鍵(CMEK)を使用できるようになっています。

  • Cloud Data Fusion のシンク:

    • Cloud Storage
    • Cloud Storage の複数ファイル
    • BigQuery
    • BigQuery の複数テーブル
    • Pub/Sub
  • Cloud Data Fusion のアクション:

    • Cloud Storage の作成
    • BigQuery の実行

Cloud Data Fusion では、Dataproc クラスタで顧客管理の暗号鍵(CMEK)をサポートしています。Cloud Data Fusion は、パイプラインで使用する一時的な Dataproc クラスタを作成します。このクラスタは、パイプラインの完了時に削除されます。CMEK は、以下に書き込まれるクラスタ メタデータを保護します。

  • クラスタ VM に接続された永続ディスク(PD)。
  • 自動作成された、またはユーザーが作成した Dataproc ステージング バケットに書き込まれたジョブドライバの出力とその他のメタデータ。

CMEK を設定する

  1. Cloud KMS 鍵を作成します。

  2. 作成した鍵のリソース ID を取得します。後の手順で、この ID を使用します。

      projects/project-id/locations/region/keyRings/key-ring-name/cryptoKeys/key-name
    

    1. Cloud Console で、[暗号鍵] ページに移動します。
    2. 鍵の横にあるその他メニューをクリックします。
    3. [リソース ID をコピー] をクリックします。リソース ID がクリップボードにコピーされます。
  3. 作成した鍵を使用するようにプロジェクトのサービス アカウントを設定します。

    1. 必須: Cloud KMS CryptoKey Encrypter/Decrypter の役割Compute Engine システム サービス アカウントに割り当てる必要があります(特定のリソースのサービス アカウントへの役割の付与をご覧ください)。このアカウントには、デフォルトで Compute Engine サービス エージェントの役割が付与されます。このアカウントの形式は次のとおりです。
      service-[PROJECT_NUMBER]@compute-system.iam.gserviceaccount.com
      
    2. 必須: Cloud KMS CryptoKey Encrypter/Decrypter の役割を Cloud Storage サービス アカウントに付与します(Cloud Storage サービス アカウントへの Cloud KMS 鍵の割り当てをご覧ください)。このアカウントの形式は次のとおりです。
      service-[PROJECT_NUMBER]@gs-project-accounts.iam.gserviceaccount.com
      
    3. 省略可: パイプラインで BigQuery リソースを使用している場合は、Cloud KMS CryptoKey Encrypter/Decrypter の役割を BigQuery サービス アカウントに付与します(暗号化と復号の権限を付与するをご覧ください)。このアカウントの形式は次のとおりです。
      bq-[PROJECT_NUMBER]@bigquery-encryption.iam.gserviceaccount.com
      
    4. 省略可: パイプラインで Pub/Sub リソースを使用している場合は、Cloud KMS CryptoKey Encrypter/Decrypter の役割を Pub/Sub サービス アカウントに付与します(顧客管理の暗号鍵の使用をご覧ください)。このアカウントの形式は次のとおりです。
      service-[PROJECT_NUMBER]@gcp-sa-pubsub.iam.gserviceaccount.com
      

Dataproc クラスタ メタデータで CMEK を使用する

CMEK を使用して、PD(永続ディスク)と、パイプラインで実行されている Dataproc クラスタによって書き込まれるステージング バケット メタデータを暗号化するには、次のいずれかの操作を行います。

  • 推奨: Dataproc コンピューティング プロファイルを作成します(Enterprise Edition のみ)。
  • 既存の Dataproc コンピューティング プロファイルを編集します(Developer、Basic、Enterprise エディション)。
  1. Cloud Console で Cloud Data Fusion の [インスタンス] ページを開きます。

    [インスタンス] ページを開く

  2. インスタンスの [操作] 列で、[インスタンスの表示] リンクをクリックします。
  3. Cloud Data Fusion ウェブ UI で [SYSTEM ADMIN] をクリックします。
  4. [Configuration] タブをクリックします。
  5. [System Compute Profiles] プルダウンをクリックします。
  6. [Create New Profile] をクリックします。
  7. [Cloud Dataproc] を選択します。
  8. [Profile label]、[Profile name]、[Description] に、プロファイル ラベル、プロファイル名、説明をそれぞれ入力します。
  9. デフォルトでは、Cloud Data Fusion は Dataproc ステージング バケットとして使用する Cloud Storage バケットを自動作成します。プロジェクトの既存の Cloud Storage バケットを使用するには、次の手順に従います。
    1. [General Settings] セクションの [Cloud Storage Bucket] フィールドに、既存の Cloud Storage バケットを入力します。
    2. Cloud Storage バケットに Cloud KMS 鍵を追加します。
  10. Cloud KMS 鍵のリソース ID を取得します。[General Settings] セクションの [Encryption Key Name] フィールドに、リソース ID を入力します。
  11. [作成] をクリック
  12. [Configuration] タブの [System Compute Profiles] セクションに複数のプロファイルが一覧表示されている場合は、新しく作成した Dataproc プロファイルをデフォルトのプロファイルにします。それには、プロファイル名のフィールドにポインタを重ねると表示される星をクリックします。
    デフォルト プロファイルを選択します。

他のリソースで CMEK を使用する

CMEK を使用して、Cloud Storage、BigQuery、Pub/Sub のシンクなどの他のリソースによって書き込まれるデータを暗号化するには、次のいずれかの操作を行います。

  • ランタイム引数を使用します。
  • Cloud Data Fusion システム設定を使用します。

ランタイム引数

  1. Cloud Data Fusion の [Pipeline Studio] ページで、[Run] ボタンの右側にあるプルダウン矢印をクリックします。
  2. [名前] フィールドに「gcp.cmek.key.name」と入力します。
  3. [Value] フィールドに、鍵のリソース ID を入力します。
    Data Fusion のエディションを選択します。
  4. [保存] をクリックします。

設定

  1. Cloud Data Fusion UI で [SYSTEM ADMIN] をクリックします。
  2. [Configuration] タブをクリックします。
  3. [System Preferences] プルダウンをクリックします。
  4. [Edit System Preferences] をクリックします。
  5. [Key] フィールドに「gcp.cmek.key.name」と入力します。
  6. [Value] フィールドに、鍵のリソース ID を入力します。
    Data Fusion のエディションを選択します。
  7. [保存して閉じる] をクリックします。