Utiliser des clés de chiffrement gérées par le client (CMEK)

Cette page explique comment créer une instance Memorystore pour Redis qui utilise des clés de chiffrement gérées par le client. Elle fournit également des instructions pour la gestion des instances qui utilisent des clés de chiffrement gérées par le client (CMEK). Pour en savoir plus sur les clés de chiffrement gérées par le client pour Memorystore, consultez la page Clés de chiffrement gérées par le client.

Avant de commencer

  1. Assurez-vous de disposer du rôle Administrateur Redis sur votre compte utilisateur.

    Accéder à la page IAM

Workflow de création d'une instance d'instance utilisant CMEK

  1. Créez un trousseau et créez une clé à l'emplacement où vous souhaitez placer l'instance Memorystore.

  2. Copiez ou notez l'ID de la clé (KMS_KEY_ID), son emplacement et l'ID (KMS_KEYRING_ID) du trousseau. Vous avez besoin de ces informations lorsque vous accordez au compte de service l'accès à la clé.

  3. Accordez au compte de service Memorystore l'accès à la clé.

  4. Accédez à un projet, puis créez une instance Memorystore pour Redis avec CMEK activé dans la même région que le trousseau et la clé.

Votre instance Memorystore pour Redis est désormais activée avec CMEK.

Créer une clé et un trousseau

Suivez les instructions pour créer un trousseau et créer une clé. Les deux doivent se trouver dans la même région que votre instance Redis. La clé peut provenir d'un autre projet, à condition qu'elle se trouve dans la même région. La clé doit également utiliser l'algorithme de chiffrement symétrique.

Accorder à la clé l'accès au compte de service

Pour créer une instance Redis qui utilise CMEK, vous devez accorder à un compte de service Memorystore spécifique l'accès à la clé. Accordez l'accès au compte de service Memorystore qui utilise le format suivant:

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

Console

Lorsque vous utilisez la console, vous accordez au compte de service l'accès à la clé dans le cadre des étapes de création d'une instance Redis utilisant CMEK.

gcloud

Pour autoriser le compte de service à accéder à la clé, exécutez la commande suivante en remplaçant VARIABLES par les valeurs appropriées:

gcloud kms keys add-iam-policy-binding [KMS_KEY_ID] \
--location=[REGION_ID] \
--keyring=[KMS_KEYRING_ID] \
--member=serviceAccount:service-[PROJECT-NUMBER]@cloud-redis.iam.gserviceaccount.com \
--role=roles/cloudkms.cryptoKeyEncrypterDecrypter

Créer une instance Memorystore pour Redis qui utilise CMEK

Pour créer une instance avec des clés de chiffrement gérées par le client, procédez comme suit :

Console

  1. Commencez par posséder un trousseau et une clé dans la région où vous souhaitez créer votre instance Memorystore.

  2. Suivez les instructions de la section Créer une instance Redis jusqu'à l'étape d'activation d'une clé de chiffrement gérée par le client, puis revenez à ces instructions.

  3. Sélectionnez Utiliser une clé de chiffrement gérée par le client (CMEK).

  4. Sélectionnez votre clé dans le menu déroulant.

  5. Si le compte de service Memorystore ne dispose pas des autorisations nécessaires, une zone de texte apparaît:

    The service-[PROJECT-NUMBER]@cloud-redis.iam.gserviceaccount.com service account does not have the "cloudkms.cryptoKeyEncrypterDecrypter" role. Verify the service account has permission to encrypt/decrypt with the selected key.

    • Cliquez sur le bouton Accorder pour accorder le rôle au compte de service Memorystore.
  6. Terminez de sélectionner les configurations de votre choix pour votre instance, puis cliquez sur le bouton Créer pour créer l'instance Memorystore pour Redis compatible avec CMEK.

gcloud

Pour créer une instance qui utilise des clés de chiffrement gérées par le client, saisissez la commande suivante, en remplaçant VARIABLES par les valeurs appropriées:

gcloud beta redis instances create [INSTANCE_ID] --size=[SIZE] \
--region=[REGION_ID] \
--customer-managed-key=projects/[PROJECT_NAME]/locations/[REGION_ID]/keyRings/[KEYRING_NAME]/cryptoKeys/[KEY_NAME]

Afficher les informations sur les clés d'une instance pour laquelle CMEK est activé

Suivez ces instructions pour vérifier si CMEK est activé pour votre instance et pour afficher la clé active.

Console

  1. Dans Google Cloud Console, accédez à la page "Instances Memorystore pour Redis".

    Memorystore pour Redis

  2. Affichez la page Détails de l'instance en cliquant sur le champ ID d'instance.

  3. Cliquez sur l'onglet Security (Sécurité).

  4. La section Chiffrement avec une clé gérée par le client contient un lien vers la clé active et indique le chemin de référence de la clé. Si cette section ne s'affiche pas, cela signifie que CMEK n'est pas activé pour votre instance.

gcloud

Pour vérifier si CMEK est activé et afficher la référence de la clé, affichez le champ customerManagedKey en exécutant la commande suivante:

gcloud beta redis instances describe INSTANCE_ID --project=PROJECT --region=REGION

Désactiver et réactiver des versions de clé

Pour savoir ce qui se passe lorsque vous désactivez, activez, détruisez ou réactivez une version de clé, consultez la section Comportement de la destruction/désactivation d'une version de clé CMEK.

Pour savoir comment désactiver, puis réactiver des versions de clé, consultez Activer et désactiver des versions de clé.

Pour savoir comment désactiver, puis réactiver des versions de clé, consultez Détruire et restaurer des versions de clé.

Étapes suivantes