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. Cela vous permet de 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 le rôle d'administrateur Redis est attribué à votre compte utilisateur.

    Accéder à la page IAM

Procédure permettant de créer une instance utilisant les 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 maintenant configurée pour utiliser les 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 avez besoin de ces informations lorsque vous accordez à 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 console Google Cloud ou de la 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 la procédure de création d'une instance Memorystore pour Redis utilisant CMEK.

gcloud

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

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 inclut 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 console Google Cloud 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 autres configurations de l'instance, puis cliquez sur Créer.

gcloud

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

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 dans laquelle vous souhaitez placer l'instance
  • PROJECT_NAME : nom du projet dans lequel vous souhaitez créer l'instance.
  • KEY_RING : nom du trousseau de clés qui inclut 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 clés d'une instance CMEK à l'aide de la consoleGoogle Cloud ou de la gcloud CLI. Ces informations incluent la clé active et indiquent si CMEK est activé pour votre instance.

Console

  1. Dans la console Google Cloud , 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 à 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 commande gcloud redis instances describe pour afficher le champ customerManagedKey.

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 savoir ce qui se passe lorsque vous désactivez, détruisez, faites pivoter, activez ou restaurez une version de clé, consultez Comportement d'une version de clé CMEK.

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

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

Étapes suivantes