De forma predeterminada, Memorystore for Redis Cluster encripta el contenido del cliente en reposo. Memorystore for Redis Cluster controla la encriptación por ti sin que debas realizar ninguna acción adicional. Esta opción se denomina encriptación predeterminada de Google.
Si deseas controlar tus claves de encriptación, puedes usar las claves de encriptación administradas por el cliente (CMEK) en Cloud KMS con servicios integrados en CMEK, incluido Memorystore para Redis Cluster. El uso de claves de Cloud KMS te permite controlar su nivel de protección, ubicación, programa de rotación, permisos de uso y acceso, y límites criptográficos. El uso de Cloud KMS también te permite ver los registros de auditoría y controlar los ciclos de vida de las claves. En lugar de que Google posea y administre las claves de encriptación de claves (KEK) simétricas que protegen tus datos, tú las controlas y administras en Cloud KMS.
Después de configurar tus recursos con CMEK, la experiencia de acceso a tus recursos de Memorystore para Redis Cluster es similar a usar la encriptación predeterminada de Google. Para obtener más información sobre tus opciones de encriptación, consulta 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 que deben encriptarse. Para obtener más información sobre si debes usar CMEK para encriptar estos datos, consulta Decide si vas a usar CMEK.
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 los clústeres habilitados para CMEK en Memorystore for Redis Cluster, 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 con KEK: Memorystore usa KEK para encriptar DEK.
El clúster en Memorystore para Redis Cluster almacena la DEK encriptada junto con los datos encriptados en el disco, y Google administra la KEK de Google. La CMEK es la KEK que encapsula la DEK. 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 un clúster cuando se usa la encriptación predeterminada administrada por Google en comparación con la CMEK.
Sin CMEK
Con CMEK
Durante el proceso de desencriptación de datos unidos con 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 for Redis Cluster.
Usas la API de Cloud KMS para administrar las CMEK. Cuando creas un clúster que usa CMEK, Memorystore usa la clave periódicamente para encriptar los datos.
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 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 los 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 un clúster 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 a la cuenta de servicio de Memorystore para Redis Cluster acceso a la clave.
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 un clúster en Memorystore for Redis Cluster, seleccionas esta clave para encriptarlo. Puedes crear un solo proyecto para tus claves y clústeres, o proyectos diferentes para cada uno de ellos.
La CMEK está disponible en todas las ubicaciones de clústeres. Debes crear el llavero de claves y la clave en la misma región en la que deseas crear el clúster. En el caso de un clúster multirregional, debes configurar el llavero de claves y la clave en la misma ubicación que el clúster. Si las regiones o ubicaciones no coinciden, fallará la solicitud para crear el clúster.
Para el ID de recurso de la clave, la CMEK usa el siguiente formato:
projects/CMEK_ENABLED_PROJECT/locations/REGION/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME
Claves externas
Puedes usar Cloud External Key Manager (Cloud EKM) para encriptar datos enGoogle Cloud con claves externas que administras.
Cuando usas una clave de Cloud EKM, Google no tiene control sobre la disponibilidad de tu clave administrada de forma externa. Si la clave no está disponible cuando creas el clúster, este no se creará.
Para obtener más consideraciones sobre el uso de claves externas, consulta Cloud External Key Manager.
¿Cómo haces que los datos encriptados con CMEK queden inaccesibles de forma permanente?
Es posible que surjan situaciones en las que quieras que los datos encriptados con CMEK sean inaccesibles de forma permanente. Para ello, debes destruir la versión de la clave. Para obtener más información sobre cómo destruir versiones de la clave, consulta Destruye y restablece versiones de claves.
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 habilites o restablezcas la clave primaria principal.
Persistencia
- Si configuras tu clúster para que use la persistencia, Memorystore para Redis Cluster desactivará la función de persistencia cuando la versión de la clave deje de estar disponible. Ya no se te cobrará por esta función.
- Memorystore para Redis Cluster no vacía los 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 clave primaria principal.
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 aplicarán 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.
- Para la persistencia, los nodos no realizan ninguna acción. Los nodos seguirán usando la versión de clave anterior hasta el próximo evento de mantenimiento.
Vuelve a encriptar manualmente los datos protegidos por CMEK
Memorystore para Redis Cluster no admite el reajuste a pedido de los datos existentes en reposo. No puedes activar un proceso de forma manual para usar una nueva versión de clave y volver a encriptar las copias de seguridad existentes o los archivos de persistencia activos. Sin embargo, puedes usar la nueva versión de clave para encriptar los datos recién escritos.
Si rotas una clave y debes forzar a un clúster a usar la nueva versión de la clave, se aplican las siguientes condiciones para las copias de seguridad y la persistencia:
Copias de seguridad
No puedes volver a envolver copias de seguridad existentes. Si el cumplimiento requiere que todos los datos se encripten con la clave más reciente, crea una copia de seguridad que use esta clave y, luego, borra las copias de seguridad existentes de forma manual. También puedes exportar esta copia de seguridad a un bucket de Cloud Storage para que se use la clave de encriptación de Cloud Storage.
Persistencia
Para forzar al clúster a usar una clave de KMS nueva, puedes ejecutar un mantenimiento simulado en el clúster. Después de completar esta operación, Memorystore para Redis Cluster puede escribir datos de persistencia con la versión actualizada de la clave primaria.
Reemplaza una clave de KMS protegida
Si reemplazas una clave de KMS protegida por otra clave de KMS o por una nueva versión de clave primaria, Memorystore para Redis Cluster aplicará este cambio solo a las operaciones futuras.
Reemplazar una clave de KMS protegida afecta tus recursos de las siguientes maneras:
- Copias de seguridad: Todas las copias de seguridad posteriores se encriptan con la nueva clave de KMS. Las copias de seguridad existentes conservan sus claves originales.
- Persistencia: La próxima vez que se reinicie el clúster o que haya un evento de mantenimiento, se usará la nueva clave de KMS.
- Caché principal: Reemplazar esta clave no tiene ningún impacto. La CMEK no encripta los datos en la memoria porque no se consideran datos en reposo.
Habilita o restablece la versión de la clave de CMEK principal
Si habilitas o restableces la versión de clave primaria de tu CMEK, se aplicarán 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 un clúster existente.
- La clave, el llavero de claves y el clúster deben estar ubicados en la misma región.
- 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.
Acerca de las restricciones de las políticas de la organización de CMEK
Memorystore for Redis Cluster admite restricciones de políticas de la organización para la CMEK. Con estas restricciones, puedes aplicar la protección de CMEK a tus clústeres y limitar las claves de Cloud KMS que puedes usar para esta protección.
Puedes configurar las siguientes restricciones de políticas de la organización:
constraints/gcp.restrictNonCmekServices: Usa esta restricción para aplicar la protección con CMEK a tus clústeres. Si la API de Memorystore para Redis Cluster se encuentra en la lista de servicios de la políticaDenypara esta restricción, no podrás crear clústeres no protegidos por CMEK.constraints/gcp.restrictCmekCryptoKeyProjects: Usa esta restricción para limitar las claves de Cloud KMS que puedes usar para la protección de CMEK. Si configuras esta restricción, los clústeres que usan la encriptación con CMEK deben usar una clave de un proyecto, una carpeta o una organización permitidos.