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

En este tema, se proporciona una descripción general de las claves de encriptación administradas por el cliente (CMEK). Las CMEK te permiten controlar las claves que protegen tus datos en reposo en Google Cloud.

Encriptación predeterminada

Todos los datos almacenados en Google Cloud se encriptan en reposo con los mismos sistemas de administración de claves endurecidos que Google usa para sus propios datos encriptados. Estos sistemas de administración de claves proporcionan controles de acceso a claves y auditorías estrictos, y encriptan los datos del usuario en reposo mediante los estándares de encriptación AES-256. No se requiere configuración ni administración. La encriptación predeterminada es la mejor opción si tu organización no tiene requisitos específicos relacionados con el cumplimiento o la localidad del material criptográfico.

Para obtener más información sobre la encriptación predeterminada en Google Cloud, consulta Encriptación en reposo predeterminada.

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

Las claves de encriptación administradas por el cliente son claves de encriptación que administras mediante Cloud KMS. Esta funcionalidad te permite tener un mayor control sobre las claves que se usan para encriptar datos en reposo dentro de los servicios compatibles de Google Cloud. Para saber si un servicio admite claves CMEK, consulta la lista de servicios compatibles. Cuando proteges datos en los servicios de Google Cloud con CMEK, la clave CMEK está bajo tu control.

El uso de CMEK no siempre proporciona más seguridad que los mecanismos de encriptación predeterminados. Además, el uso de CMEK genera costos adicionales relacionados con Cloud KMS. Usar CMEK te permite controlar más aspectos del ciclo de vida y la administración de tus claves, incluidas las siguientes capacidades:

  • Puedes impedir que Google pueda desencriptar datos en reposo si inhabilitas las claves que se usan para proteger esos datos.
  • Puedes proteger tus datos con una clave que cumpla con los requisitos específicos de localidad o residencia.
  • Puedes rotar de forma automática o manual las claves que se usan para proteger tus datos.
  • Puedes proteger tus datos con diferentes tipos de claves:
    • Claves de software generadas
    • Claves de Cloud HSM (respaldado en hardware)
    • Claves de Cloud External Key Manager (administradas de forma externa)
    • Claves existentes que importas a Cloud KMS.
  • Puedes usar una cantidad ilimitada de versiones de claves para cada una. La mayoría de los servicios no admiten versiones de claves ilimitadas cuando se usa la encriptación predeterminada.

Integraciones de CMEK

Cuando un servicio admite CMEK, se dice que tiene una integración de CMEK. Algunos servicios, como GKE, tienen varias integraciones con CMEK para proteger diferentes tipos de datos relacionados con el servicio.

Para conocer los pasos exactos a fin de habilitar CMEK, consulta la documentación del servicio de Google Cloud relevante. Es posible que sigas pasos similares a los siguientes:

  1. Puedes crear un llavero de claves de Cloud KMS o elegir uno existente. Cuando crees el llavero de claves, elige una ubicación geográficamente cercana a los recursos que proteges. El llavero de claves puede estar en el mismo proyecto que los recursos que proteges o en proyectos diferentes. Usar diferentes proyectos te brinda un mayor control sobre los permisos de Identity and Access Management (IAM).

  2. Crea o importa una clave de Cloud KMS en el llavero de claves elegido. Esta es la clave CMEK.

  3. Otorgas el rol de IAM encriptador/desencriptador de CryptoKey (roles/cloudkms.cryptoKeyEncrypterDecrypter) en la clave CMEK a la cuenta de servicio del servicio.

  4. Configura el servicio para usar la clave CMEK a fin de proteger sus datos. Por ejemplo, puedes configurar un clúster de GKE para que use CMEK a fin de proteger los datos en reposo en los discos de arranque de los nodos.

Siempre que la cuenta de servicio tenga la función de encriptador/desencriptador de CyptoKey, el servicio puede encriptar y desencriptar sus datos. Si revocas esta función, o si inhabilitas o destruyes la clave CMEK, no se podrá acceder a esos datos.

Cumplimiento de CMEK

Algunos servicios no almacenan datos directamente, o solo durante poco tiempo, como un paso intermedio en una operación de larga duración. Para este tipo de carga de trabajo, no es práctico encriptar cada escritura por separado. Estos servicios no ofrecen integraciones con CMEK, pero pueden ofrecer cumplimiento de CMEK, a menudo sin configuración de tu parte.

Un servicio que cumple con CMEK encripta los datos temporales mediante una clave efímera que solo existe en la memoria y nunca se escribe en el disco. Cuando ya no se necesitan los datos temporales, la clave efímera se limpia de la memoria. Sin la clave efímera, no se puede acceder a los datos encriptados, incluso si el recurso de almacenamiento aún existe.

Un servicio compatible con CMEK puede ofrecer la capacidad de enviar su resultado a un servicio con una integración con CMEK, como Cloud Storage.

Políticas de la organización de CMEK

Google Cloud ofrece dos restricciones de políticas de la organización para garantizar el uso de CMEK en un recurso de la organización. Estas restricciones proporcionan controles a los administradores de la organización para exigir el uso de CMEK y limitar qué claves de Cloud KMS se usan para la protección de CMEK. Para obtener más información, consulta Políticas de la organización de CMEK.

¿Qué sigue?