Claves de encriptación administradas por el cliente (CMEK)

De forma predeterminada, Google Cloud encripta de forma automática los datos mediante claves de encriptación administradas por Google. Si tienes requisitos normativos o de cumplimiento específicos relacionados con las claves que protegen los datos, puedes usar las claves de encriptación administradas por el cliente (CMEK).

Para obtener más información sobre CMEK, consulta la guía de CMEK en la documentación de Cloud Key Management Service (KMS).

Datos protegidos

Todos los datos en reposo del agente de Dialogflow CX se pueden proteger con CMEK.

Limitaciones

  • Analytics está inhabilitado para los agentes que tienen CMEK habilitadas.
  • Los agentes de almacén de datos no admiten la rotación de claves. Los agentes de Dialogflow CX sin almacenes de datos admiten la rotación de claves, mediante la cual se encriptan los datos nuevos con la versión de clave nueva. No se admite volver a encriptar datos previamente encriptados con una versión de clave nueva.
  • No se admite la ubicación global.
  • Se debe usar una clave por ubicación de proyecto.
  • Para restablecer un agente con CMEK habilitadas, debes elegir la opción Cloud Storage.
  • Los recursos existentes en proyectos integrados que no son CMEK no se pueden integrar de forma retroactiva. En su lugar, se recomienda que los recursos se exporten y restablezcan en un proyecto nuevo para CMEK.

Crea claves

Para crear claves, debes usar el servicio KMS. Para obtener instrucciones, consulta Crea claves simétricas. Cuando creas o eliges una clave, debes configurar lo siguiente:

  • Asegúrate de seleccionar la ubicación que usas para tu agente. De lo contrario, las solicitudes fallarán.
  • Dialogflow no admite la rotación de claves para los agentes de almacén de datos. Si usas un agente de este tipo, el período de rotación debe configurarse en Nunca cuando creas la clave.

Configura un agente para usar tus claves

Cuando creas un agente, puedes especificar su ubicación y si el agente usará una clave administrada por Google o la ya configurada para esa ubicación. Realice sus selecciones en este momento.

Configura tu cuenta de servicio o de usuario

  1. Crea la cuenta de servicio de CMEK de CCAI para tu proyecto con Google Cloud CLI. Para obtener más información, consulta la documentación de identidad de servicios de gcloud.

    gcloud beta services identity create --service=dialogflow.googleapis.com --project=PROJECT_ID
    

    Se creará la cuenta de servicio. No se mostrará en la respuesta de creación, pero tendrá el siguiente formato:

    service-PROJECT_NUMBER@gcp-sa-ccai-cmek.iam.gserviceaccount.com
    
  2. Otorga a la cuenta de servicio de CMEK de CCAI el rol de Encriptador o Desencriptador de CryptoKey de Cloud KMS para asegurarte de que el servicio tenga permisos para encriptar y desencriptar contenido con tu clave.

    gcloud kms keys add-iam-policy-binding KMS_KEY_ID \
    --project=PROJECT_ID \
    --location=LOCATION_ID \
    --keyring=KMS_KEY_RING \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-ccai-cmek.iam.gserviceaccount.com \
    --role=roles/cloudkms.cryptoKeyEncrypterDecrypter