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

En utilisant des clés de chiffrement gérées par le client (CMEK), vous contrôlez vos clés. Vous pouvez ainsi contrôler leur niveau de protection, leur emplacement, leur calendrier de rotation, leurs autorisations d'utilisation et d'accès, ainsi que leurs limites cryptographiques. Au lieu de laisser Google posséder et gérer les clés de chiffrement de clés (KEK) symétriques qui protègent vos données, c'est vous qui vous chargez de cette tâche dans Cloud Key Management Service (KMS).

Avant de commencer

  1. Assurez-vous que vous disposez du rôle Administrateur Redis rôle sur votre compte utilisateur.

    Accéder à la page IAM

Procédure permettant de créer une instance utilisant CMEK

  1. Créez un trousseau de clés et une clé à l'emplacement où vous souhaitez que l'instance Memorystore pour Redis se trouve.

  2. Copiez ou notez le nom de la clé (KEY_NAME), son emplacement et le nom du trousseau de clés (KEY_RING). Vous aurez besoin de ces informations lorsque vous accorderez à la clé l'accès au compte de service.

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

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

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

Créer un trousseau de clés et une clé

Créez un trousseau de clés et une clé. Les deux doivent se trouver dans la même région que votre instance Memorystore pour Redis. La clé peut provenir d'un autre projet, à condition qu'elle se trouve dans la même région. De plus, la clé doit utiliser l'algorithme de chiffrement symétrique.

Une fois le trousseau de clés et la clé créés, copiez ou notez le KEY_NAME, l'emplacement de la clé et le KEY_RING. Vous aurez besoin de ces informations lorsque vous accorderez à la clé l'accès au compte de service.

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

Avant de pouvoir créer une instance Memorystore pour Redis qui utilise CMEK, vous devez accorder à un compte de service Memorystore pour Redis spécifique l'accès à la clé. Vous pouvez accorder au compte de service l'accès à la clé à l'aide de la Google Cloud console ou de Google Cloud CLI.

Pour accorder l'accès au compte de service, utilisez le format suivant :

service-PROJECT_NUMBER@cloud-redis.iam.gserviceaccount.com

Console

Vous accordez au compte de service l'accès à la clé dans le cadre de la procédure de création d'une instance Memorystore pour Redis qui utilise CMEK.

gcloud

Pour accorder au compte de service l'accès à la clé, utilisez la gcloud kms keys add-iam-policy-binding commande.

gcloud kms keys add-iam-policy-binding KEY_NAME \
--location=REGION_ID \
--keyring=KEY_RING \
--member=serviceAccount:service-PROJECT_NUMBER@cloud-redis.iam.gserviceaccount.com \
--role=roles/cloudkms.cryptoKeyEncrypterDecrypter

Effectuez les remplacements suivants :

  • KEY_NAME : nom de la clé à laquelle vous accordez l'accès au compte de service
  • REGION_ID : région où se trouve le trousseau de clés
  • KEY_RING : nom du trousseau de clés qui contient la clé
  • PROJECT_NUMBER : ID ou numéro du projet contenant le compte de service

Créer une instance Memorystore pour Redis qui utilise CMEK

Vous pouvez créer une instance qui utilise CMEK à l'aide de la Google Cloud console ou de la gcloud CLI.

Console

  1. Assurez-vous de créer un trousseau de clés et une clé dans la même région que celle où vous souhaitez créer votre instance.

  2. Suivez les instructions de la section Créer une instance Redis sur un réseau VPC jusqu'à l'étape d'activation de CMEK. Revenez ensuite à ces instructions.

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

  4. Pour sélectionner votre clé, utilisez le menu.

  5. Sélectionnez les configurations restantes pour l'instance, puis cliquez sur Créer.

gcloud

Pour créer une instance qui utilise CMEK, utilisez la gcloud redis instances create commande.

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

Effectuez les remplacements suivants :

  • INSTANCE_ID : ID de l'instance que vous créez
  • SIZE : taille de l'instance que vous souhaitez créer, en gibioctets (Gio)
  • REGION_ID : ID de la région où vous souhaitez que l'instance se trouve
  • PROJECT_NAME : nom du projet dans lequel vous souhaitez créer l'instance
  • KEY_RING : nom du trousseau de clés qui contient la clé
  • KEY_NAME : nom de la clé

Afficher les informations sur les clés d'une instance configurée pour utiliser les CMEK

Vous pouvez afficher les informations sur les clés d'une instance configurée pour utiliser les CMEK à l'aide de la Google Cloud console ou de la gcloud CLI. Ces informations incluent la clé active et indiquent si CMEK est activé pour votre instance.

Console

  1. Dans la Google Cloud console, accédez à la page Instances.

    Memorystore pour Redis

  2. Cliquez sur l'ID de votre instance.

  3. Dans le volet de gauche, cliquez sur l'onglet Sécurité. La page Sécurité contient un lien vers la clé active et affiche le chemin d'accès de référence de la clé. Si ces informations ne s'affichent pas, cela signifie que vous n'avez pas activé CMEK pour votre instance.

gcloud

Pour vérifier si CMEK est activé et afficher la référence de la clé, utilisez la gcloud redis instances describe commande pour afficher le customerManagedKey champ.

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

Effectuez les remplacements suivants :

  • INSTANCE_ID : ID de l'instance pour laquelle vous souhaitez afficher des informations
  • PROJECT_NAME : nom du projet contenant l'instance
  • REGION_ID : ID de la région où se trouve l'instance

Gérer les versions de clé

Pour en savoir plus sur ce qui se passe lorsque vous désactivez, détruisez, faites pivoter, activez, et restaurez une version de clé, consultez la page Comportement d'une version de clé CMEK.

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

Pour savoir comment détruire et restaurer des versions de clé, consultez la page Détruire et restaurer des versions de clé.

Étape suivante