En esta página, se describe cómo funcionan las claves de encriptación administradas por el cliente (CMEK) con Memorystore para Redis Cluster. Para usar esta función de inmediato, consulta Usa claves de encriptación administradas por el cliente (CMEK).
¿Quiénes deberían usar la CMEK?
Las CMEK están diseñadas para organizaciones que tienen datos sensibles o regulados y, por lo tanto, necesitan administrar las claves de encriptación por su cuenta.
Diferencias entre la encriptación administrada por Google y la encriptación administrada por el cliente
La función de CMEK te permite usar tus propias claves criptográficas para los datos en reposo en Memorystore para Redis Cluster. En el caso de las instancias de Memorystore for Redis Cluster habilitadas para CMEK, Google usa tus claves para acceder a todos los datos en reposo.
Memorystore usa claves de encriptación de datos (DEK) y claves de encriptación de claves (KEK) administradas por Google para encriptar datos en Memorystore for Redis Cluster. Existen dos niveles de encriptación:
- Encriptación con DEK: Memorystore usa DEK para encriptar datos en Memorystore para Redis Cluster.
- Encriptación de KEK: Memorystore usa KEK para encriptar DEK.
La instancia de Memorystore para Redis Cluster almacena la DEK encriptada junto con los datos encriptados en el disco, y Google administra la KEK de Google. Con la CMEK, creas una clave que une la KEK de Google. La CMEK te permite crear, inhabilitar o destruir, rotar y habilitar o restablecer la KEK.
En los siguientes diagramas, se muestra cómo funciona la encriptación de datos en reposo dentro de una instancia de Memorystore para Redis Cluster cuando se usa la encriptación predeterminada administrada por Google en comparación con la CMEK.
Sin CMEK
Con CMEK
Cuando desencripta datos unidos con la CMEK, Memorystore usa la KEK de Cloud Key Management Service para desencriptar la DEK y la DEK no encriptada para desencriptar los datos en reposo.
Precios
Memorystore for Redis Cluster factura un clúster habilitado para CMEK como cualquier otro clúster; no hay costos adicionales. Para obtener más información, consulta los precios de Memorystore Cluster para Redis.
Usas la API de Cloud KMS para administrar las CMEK. Cuando creas una instancia de Memorystore para Redis Cluster con CMEK, Memorystore usa la clave periódicamente para encriptar los datos y garantizar que los permisos de la clave sean correctos y que la clave esté habilitada.
Cloud KMS te factura el costo de la clave y las operaciones de encriptación y desencriptación cuando Memorystore para Redis Cluster usa la clave. Para obtener más información, consulta Precios de Cloud KMS.
¿Qué datos se encriptan con CMEK?
La CMEK encripta los siguientes tipos de datos del cliente que se almacenan en el almacenamiento persistente:
- Copias de seguridad: Las copias de seguridad te permiten recuperar tus datos a un momento determinado, y exportar y analizar datos. Las copias de seguridad también son útiles para la recuperación ante desastres, la migración de datos, el uso compartido de datos y las situaciones de cumplimiento.
- Persistencia: Memorystore for Redis Cluster admite dos tipos de persistencia:
- Persistencia de RDB: La función de la base de datos de Redis (RDB) protege tus datos guardando instantáneas de ellos en un almacenamiento duradero.
- Persistencia de AOF: Esta función prioriza la durabilidad de los datos. Almacena datos de forma duradera registrando cada comando de escritura en un archivo de registro llamado Archivo de solo anexar (AOF). Si se produce una falla o un reinicio del sistema, el servidor reproduce los comandos del archivo AOF de forma secuencial para restablecer tus datos.
Acerca de las cuentas de servicio
Cuando crees una instancia con CMEK, debes otorgar el rol cloudkms.cryptoKeyEncrypterDecrypter a la cuenta de servicio de Memorystore para Redis Cluster que tiene el siguiente formato:
service-[PROJECT_NUMBER]@cloud-redis.iam.gserviceaccount.com
Si otorgas este permiso, la cuenta de servicio podrá solicitar acceso a la clave desde Cloud KMS.
Para obtener instrucciones sobre cómo otorgar este permiso a la cuenta de servicio, consulta Otorga acceso a la clave a la cuenta de servicio de Memorystore para Redis Cluster.
Acerca de las claves
En Cloud KMS, debes crear un llavero de claves con una clave criptográfica que use un algoritmo de encriptación simétrica. Cuando creas una nueva instancia de Memorystore para Redis Cluster, seleccionas esta clave para encriptar la instancia. Puedes crear un solo proyecto para tus claves y tus instancias, o proyectos diferentes para cada uno de ellos.
La CMEK está disponible en todas las ubicaciones de instancias de Memorystore for Redis Cluster. Debes configurar la región de la clave y el llavero de claves en la misma región que la instancia. Una clave multirregional o de región global no funciona. Si las regiones no coinciden, fallará la solicitud para crear una instancia.
CMEK usa el siguiente formato:
projects/[CMEK_ENABLED_PROJECT]/locations/[REGION]/keyRings/[KEY_RING_NAME]/cryptoKeys/[KEY_NAME]
¿Cómo haces que los datos encriptados con CMEK queden inaccesibles de forma permanente?
Es posible que surjan situaciones en las que quieras destruir de forma permanente los datos encriptados con CMEK. Para ello, debes destruir la versión de la clave. No puedes destruir el llavero de claves o la clave, pero puedes destruir las versiones de la clave.
Comportamiento de una versión de clave CMEK
En esta sección, se proporciona información sobre lo que sucede cuando inhabilitas, destruyes, rotas, habilitas y restableces una versión de clave.
Inhabilita o destruye una versión de clave CMEK
Si inhabilitas o destruyes la versión de clave primaria de tu CMEK, se aplicarán las siguientes condiciones para las copias de seguridad y la persistencia.
Copias de seguridad
- No puedes crear copias de seguridad automáticas ni a pedido. Sin embargo, si habilitas una versión de clave anterior, podrás acceder a las copias de seguridad que creaste con esa versión de clave.
- No podrás actualizar ni volver a habilitar las copias de seguridad automáticas hasta que habilite o restablezca la clave primaria principal.
Persistencia
- Si habilitas la persistencia, Memorystore Cluster para Redis realiza una actualización similar a la que se usa en el mantenimiento y, luego, inhabilita la función de persistencia. Ya no se te cobrará por esta función.
- Memorystore for Redis Cluster no descarga datos nuevos en el almacenamiento persistente con la CMEK.
- Memorystore for Redis Cluster no puede leer los datos existentes que se encuentran en el almacenamiento persistente.
- No puedes actualizar ni volver a habilitar la persistencia hasta que habilite o restablezca la versión de la clave primaria.
Si habilitas la versión de clave primaria de tu CMEK, pero inhabilitas o destruyes una versión de clave anterior, se aplicarán las siguientes condiciones para las copias de seguridad y la persistencia:
- Puedes crear copias de seguridad. Sin embargo, si una copia de seguridad se encripta con una versión de clave anterior que está inhabilitada o destruida, la copia de seguridad seguirá siendo inaccesible.
- Si habilitas la persistencia, esta función permanecerá habilitada. Si se inhabilita o destruye la versión de clave anterior que se usa en la persistencia, Memorystore para Redis Cluster realiza una actualización similar a la que se usa en el mantenimiento y vuelve a encriptar los datos con la versión de clave primaria.
Rota la versión principal de la clave de CMEK
Si rotas la versión de clave primaria de tu CMEK y creas una nueva versión de clave primaria, se aplican las siguientes condiciones para las copias de seguridad y la persistencia:
- La versión de clave primaria más reciente de tu CMEK encripta las copias de seguridad nuevas.
- En el caso de las copias de seguridad existentes, no se realiza ninguna reencriptación.
- En cuanto a la persistencia, las VMs no realizan ninguna acción. Las VMs seguirán usando la versión anterior de la clave hasta el próximo evento de mantenimiento.
Habilita o restablece la versión de clave principal de la CMEK
Si habilitas o restableces la versión de clave primaria de tu CMEK, se aplican las siguientes condiciones para las copias de seguridad y la persistencia:
- Puedes volver a crear copias de seguridad automáticas y a pedido.
- Memorystore for Redis Cluster realiza una actualización similar a la que se usa en el mantenimiento y vuelve a habilitar la persistencia.
Limitaciones
Se aplican las siguientes limitaciones cuando se usa la CMEK con Memorystore para Redis Cluster:
- No puedes habilitar la CMEK en una implementación existente de Memorystore for Redis Cluster.
- La región de la clave, el llavero de claves y la instancia deben ser la misma.
- Debes usar el algoritmo de encriptación simétrica para tu clave.
- Los índices de encriptación y desencriptación de Cloud KMS están sujetos a una cuota.