Usar claves de encriptación administradas por el cliente (CMEK)

En esta página, se proporcionan instrucciones para crear una instancia de Memorystore para Redis Cluster que use claves de encriptación administradas por el cliente (CMEK). También proporciona instrucciones para administrar instancias que usan CMEK. Para obtener más información sobre las CMEK para el clúster de Memorystore para Redis, consulta Acerca de las claves de encriptación administradas por el cliente (CMEK).

Antes de comenzar

  1. Asegúrate de tener el rol de administrador de Redis en tu cuenta de usuario.

    Ir a la página IAM

Flujo de trabajo para crear una instancia que use CMEK

  1. Crea un llavero de claves y una clave en la ubicación en la que deseas que se encuentre la instancia de Memorystore para Redis Cluster.

  2. Copia o escribe el ID de la clave (KMS_KEY_ID), la ubicación de la clave y el ID del llavero (KMS_KEY_RING_ID). Necesitarás esta información cuando le otorgues a la cuenta de servicio acceso a la clave.

  3. Otorga a la cuenta de servicio de Memorystore for Redis Cluster acceso a la clave.

  4. Ve a un proyecto y crea una instancia de Memorystore para Redis Cluster con la CMEK habilitada en la misma región que el llavero de claves y la clave.

Tu instancia de Memorystore for Redis Cluster ahora está habilitada con CMEK.

Crea un llavero de claves y una clave

Crea un llavero de claves y una clave. Ambos deben estar en la misma región que tu instancia de Memorystore para Redis Cluster. La clave puede ser de otro proyecto, siempre y cuando esté en la misma región. Además, la clave debe usar el algoritmo de encriptación simétrica.

Otorga a la cuenta de servicio de Memorystore for Redis Cluster acceso a la clave

Antes de crear una instancia de Memorystore para Redis Cluster que use CMEK, debes otorgar acceso a la clave a una cuenta de servicio específica de Memorystore para Redis Cluster.

Para otorgar acceso a la cuenta de servicio, usa el siguiente formato:

service-[PROJECT-NUMBER]@cloud-redis.iam.gserviceaccount.com

gcloud

Para otorgar acceso a la clave a la cuenta de servicio, usa el comando gcloud kms keys add-iam-policy-binding. Reemplaza VARIABLES por los valores adecuados.

gcloud kms keys add-iam-policy-binding  \
projects/PROJECT_ID/locations/REGION_ID/keyRings/KMS_KEY_RING_ID/cryptoKeys/KMS_KEY_ID \
--member=serviceAccount:service-PROJECT_NUMBER@cloud-redis.iam.gserviceaccount.com \
--role=roles/cloudkms.cryptoKeyEncrypterDecrypter

Crea una instancia de Memorystore para Redis Cluster que use CMEK

gcloud

Para crear una instancia que use CMEK, usa el comando gcloud beta redis clusters create. Reemplaza VARIABLES por los valores adecuados.

gcloud beta redis clusters create INSTANCE_ID \
--project=PROJECT_NAME \
--region=REGION_ID \
--network=NETWORK \
--kms-key=projects/PROJECT_NAME/locations/REGION_ID/keyRings/KMS_KEY_RING_ID/cryptoKeys/KMS_KEY_ID \
--shard-count=SHARD_NUMBER \
--persistence-mode=PERSISTENCE_MODE

Visualiza la información de claves de una instancia con CMEK habilitadas

Sigue estas instrucciones para ver si CMEK está habilitada en tu instancia y para ver la clave activa.

gcloud

Para verificar si CMEK está habilitada y ver la referencia de la clave, usa el comando gcloud redis clusters describe para ver los campos encryptionInfo y kmsKey. Reemplaza VARIABLES por los valores adecuados.

gcloud redis clusters describe INSTANCE_ID \
--project=PROJECT_NAME \
--region=REGION_ID

Administra versiones de claves

Para obtener información sobre lo que sucede cuando inhabilitas, destruyes, rotas, habilitas y restableces una versión de clave, consulta Comportamiento de una versión de clave de CMEK.

Si deseas obtener instrucciones para inhabilitar y volver a habilitar versiones de claves, consulta Habilita e inhabilita versiones de claves.

Si deseas obtener instrucciones para destruir y restablecer versiones de claves, consulta Destruye y restablece versiones de claves.

¿Qué sigue?