顧客管理の暗号鍵(CMEK)

デフォルトでは、Customer Experience Insights はお客様のコンテンツを保存時に暗号化します。暗号化は CX Insights が行うため、ユーザー側での作業は必要ありません。このオプションは、Google のデフォルトの暗号化と呼ばれます。

暗号鍵を管理する場合は、Cloud KMS の顧客管理の暗号鍵(CMEK)を、CX Insights などの CMEK 統合サービスで使用できます。Cloud KMS 鍵を使用すると、保護レベル、ロケーション、ローテーション スケジュール、使用とアクセスの権限、暗号境界を制御できます。Cloud KMS を使用すると、監査ログを表示し、鍵のライフサイクルを管理することもできます。データを保護する対称鍵暗号鍵(KEK)は Google が所有して管理するのではなく、ユーザーが Cloud KMS でこれらの鍵の制御と管理を行います。

CMEK を使用してリソースを設定した後は、CX Insights リソースへのアクセスは、Google のデフォルトの暗号化を使用する場合と同様です。暗号化オプションの詳細については、顧客管理の暗号鍵(CMEK)をご覧ください。

保護対象データ

サポートされているロケーションにある Insights のすべての保存データは、CMEK で保護できます。

サポートされているロケーション

CMEK は、global を除くすべての Insights ロケーションで使用できます。

制限事項

別の Google Cloud プロダクトの顧客所有インスタンスへのデータ下り(外向き)を含む機能については、対応する Google Cloud プロダクトで CMEK を構成します。

  • 音声と文字起こしをアップロードする: Cloud Speech-to-Text で CMEK を有効にする
  • BigQuery に会話をエクスポートする: BigQuery テーブル BigQuery で CMEK を有効にする

キーの作成

鍵を作成するには、KMS サービスを使用します。手順については、対称鍵の作成をご覧ください。鍵を作成または選択するときは、次のように構成する必要があります。

  • 分析情報データに使用するロケーションを選択する必要があります。そうしないと、リクエストが失敗します。

分析情報で CMEK を有効にする

特定のロケーションに分析情報データを作成する前に、このロケーションのデータが顧客管理の鍵で保護されるかどうか(つまり、CMEK を有効にするかどうか)を指定できます。この時点でキーを構成します。

前提条件

  1. Google Cloudを使用して、プロジェクトの分析情報サービス アカウントを作成します。詳細については、Google Cloud サービス ID のドキュメントをご覧ください。

    gcloud beta services identity create --service=contactcenterinsights.googleapis.com --project=PROJECT_ID
    
  2. CCAI CMEK サービス エージェントに暗号鍵に対する Cloud KMS CryptoKey の暗号化/復号のロールを付与して、サービス エージェントが鍵を使用して暗号化と復号を行う権限を持つようにします。サービス エージェントのメールアドレスは次のとおりです。

    service-PROJECT_NUMBER@gcp-sa-ccai-cmek.iam.gserviceaccount.com

分析情報のロケーションのキーを構成する

  1. InitializeEncryptionSpec API を使用して鍵を構成します。

    次の変数を指定する必要があります。

    • PROJECT_ID: 実際の Google Cloud プロジェクト ID
    • LOCATION_ID: Insights で CMEK を有効にするために選択したロケーション。
    • KMS_KEY_NAME: 選択したロケーションで Insights データの暗号化または復号に使用される KMS 鍵の名前。
      • KMS 鍵名(projects/<project_id>/locations/<location_id>/keyRings/<key_ring>/cryptoKeys/<key_name> など)のロケーションは、CMEK を有効にする選択したロケーションと一致している必要があります。
      • 前提条件の手順 2 で、この鍵へのアクセス権を付与する必要があります。

    次に例を示します。

    curl -X POST \
        -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        -H "Content-Type: application/json; charset=utf-8" \
        -d '{ encryption_spec: { kms_key: "KMS_KEY_NAME" } }' \
        "https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/encryptionSpec:initialize"
    

    次のような JSON レスポンスが返されます。

    {
      "name": "projects/PROJECT_ID/locations/LOCATION_ID/operations/OPERATION_ID"
    }
    
  2. GetOperation API を使用して、長時間実行オペレーションの結果を確認します。

    次に例を示します。

    curl -X GET \
        -H "Authorization: Bearer $(gcloud auth print-access-token)" \ 
        "https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/operations/OPERATION_ID"
    

CMEK の設定を確認する

GetEncryptionSpec API を使用して、ロケーションに構成されている暗号鍵を確認します。

次に例を示します。

  curl -X GET \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/encryptionSpec"

鍵を取り消す

鍵に対する Insights のアクセス権を取り消すには、KMS 鍵のバージョンを無効にするか、KMS 鍵からサービス アカウントの Cloud KMS CryptoKey の暗号化/復号ロールを削除します。