Cloud Intelligence™Cloud Intelligence™

Cloud Intelligence™

Cloud KMS Autokey : la gestion des clés simplifiée pour des ressources cloud sécurisées

By Eric GattonFeb 3, 20257 min read

Cette page est également disponible en English, Deutsch, Español, Italiano, 日本語 et Português.

À l'automne 2024, Google Cloud a rendu Cloud Key Management Service (KMS) avec Autokey disponible en version générale (General Availability), offrant ainsi une approche simplifiée pour gérer les clés de chiffrement sur l'ensemble des services Google Cloud. KMS Autokey vise à simplifier la création et la gestion des Customer-Managed Encryption Keys (CMEK) en automatisant le provisionnement, l'attribution et la rotation des clés. La sécurité devient ainsi plus simple à piloter et votre infrastructure s'aligne sur les bonnes pratiques du secteur en matière de protection des données.

Dans cet article, nous verrons ce qu'est Cloud KMS avec Autokey, comment il fonctionne, comment l'activer et l'utiliser, et même comment le désactiver.

Qu'est-ce que Cloud KMS avec Autokey ?

Cloud KMS avec Autokey automatise la création des clés de chiffrement lors du déploiement de ressources sur des services compatibles tels que Cloud Storage, Compute Engine, BigQuery, Secret Manager, Cloud SQL et Spanner.

Auparavant, il fallait préprovisionner les clés, les key rings et les comptes de service avant de pouvoir les utiliser. Avec KMS Autokey, tout cela se fait désormais à la volée. Lors de la création d'une nouvelle ressource, KMS Autokey génère les clés à la demande et garantit un chiffrement transparent de vos workloads, sans intervention manuelle.

Pourquoi utiliser Cloud KMS avec Autokey ?

Cloud KMS avec Autokey simplifie la gestion des clés et garantit en parallèle que vos pratiques de sécurité respectent les standards du secteur et les bonnes pratiques recommandées, notamment :

  • Protection par Hardware Security Module (HSM) pour vos clés.
  • Séparation des responsabilités via des contrôles d'accès basés sur les rôles.
  • Rotation automatique des clés pour préserver la sécurité de vos données.
  • Contrôle de la localisation des clés pour répondre aux exigences réglementaires.
  • Spécificité des clés pour une gestion fine des accès.

Les clés générées via Cloud KMS avec Autokey fonctionnent exactement comme les autres clés Cloud HSM, mais le processus est automatique et évolutif, ce qui le rend idéal pour les environnements dynamiques où de nouvelles ressources sont fréquemment déployées.

L'utilisation de Cloud KMS avec Autokey n'entraîne aucun coût additionnel. Les clés créées avec Autokey sont facturées au même tarif que toute autre clé Cloud HSM.

Comment activer KMS Autokey

L'activation de Cloud KMS avec Autokey se fait au niveau du dossier dans votre organisation Google Cloud. Vous devrez donc créer un nouveau dossier (ou réutiliser un dossier existant), puis créer un projet à l'intérieur de ce dossier pour stocker vos clés. Vous créez ensuite de nouveaux projets dans ce dossier, ou y déplacez des projets existants, afin de bénéficier de la création automatique de clés via Autokey. Dans l'exemple ci-dessous, nous créons un nouveau dossier ainsi que deux projets à l'intérieur. Je préfère créer un nouveau dossier plutôt que d'en réutiliser un existant : il peut alors servir de périmètre de sécurité et permet d'accorder les accès selon le principe du moindre privilège.

exemple de structure de dossiers

Étape 1 : créer un dossier et deux projets dans ce dossier

  • Nom du dossier : kms-autokey (dossier avec Cloud KMS Autokey activé)
  • Nom du projet : kms-keys (projet qui stocke les clés)
  • Nom du projet : kms-enabled-proj (projet dont les ressources se voient attribuer des clés)

Étape 2 : attribuer les rôles IAM requis

Pour que Cloud KMS avec Autokey fonctionne correctement, certains rôles doivent vous être attribués au niveau de l'organisation et du dossier :

Niveau dossier (dossier kms-autokey)

  • Cloud KMS Autokey Admin (roles/cloudkms.autokeyAdmin)
  • Folder IAM Admin (roles/resourcemanager.folderIamAdmin)

Niveau organisation

  • Billing Account User (roles/billing.user)

Une fois ces rôles attribués, vous pouvez activer Cloud KMS avec Autokey dans le dossier.

Étape 3 : activer Cloud KMS avec Autokey dans le dossier

  1. Dans votre console GCP, sélectionnez le dossier kms-autokey.
  2. Accédez à Key Management.

sélectionnez le dossier, puis accédez à Key Management

3. Dans le sélecteur de contexte, choisissez le projet qui contiendra vos clés. Dans notre exemple, il s'agit de kms-keys.

rattachez au dossier le projet qui gérera les clés

Étape 4 : créer le compte de service

Dans le projet de clés KMS (kms-keys), vous devez créer un compte d'agent de service pour permettre au service KMS d'interagir avec vos ressources. Dans Cloud Shell :

gcloud beta services identity create --service=cloudkms.googleapis.com --project=PROJECT_NUMBER

remplacez PROJECT_NUMBER par le numéro du projet de clés KMS ; dans notre exemple, il s'agit du numéro du projet kms-keys

exemple de sortie

gcloud beta services identity create --service=cloudkms.googleapis.com --project=937192488103
Service identity created: [email protected]

Accordez ensuite les permissions Cloud KMS Admin à l'agent de service :

gcloud projects add-iam-policy-binding PROJECT_NUMBER --role=roles/cloudkms.admin --member=serviceAccount:[email protected]

Là encore, remplacez PROJECT_NUMBER par le numéro du projet de clés KMS ; dans notre exemple, il s'agit du numéro du projet kms-keys

exemple de sortie

gcloud projects add-iam-policy-binding 937192488103 --role=roles/cloudkms.admin --member=serviceAccount:[email protected]
Updated IAM policy for project [937192488103].
bindings:
- members:
  - serviceAccount:[email protected]
  role: roles/cloudkms.admin
- members:
  - user:<omitted>@doit.com
  role: roles/owner
etag: BwYsUy7dhpo=
version: 1

Étape 5 : attribuer le rôle KMS Autokey User

Pour permettre aux développeurs d'utiliser KMS Autokey, vous devez leur attribuer le rôle roles/cloudkms.autokeyUser. Cette attribution peut se faire au niveau du dossier ou au niveau du projet. Voici comment procéder au niveau du dossier :

gcloud resource-manager folders add-iam-policy-binding FOLDER_ID --role=roles/cloudkms.autokeyUser --member=user:USER_EMAIL

Remplacez FOLDER_ID par le dossier dans lequel vous activez Autokey ; dans notre exemple, il s'agit de l'ID du dossier kms-autokey. Remplacez USER_EMAIL par l'adresse e-mail de la personne à qui vous souhaitez accorder l'autorisation d'utiliser KMS Autokey, par exemple un utilisateur ou un groupe de développeurs.

exemple de sortie

gcloud resource-manager folders add-iam-policy-binding 279174226974 --role=roles/cloudkms.autokeyUser --member=user:<developers email address>
Updated IAM policy for folder [279174226974].
bindings:
- members:
  - user:<omitted>@doit.com
  role: roles/cloudkms.autokeyAdmin
- members:
  - user:<omitted>@doit.com
  role: roles/cloudkms.autokeyUser
- members:
  - user:<omitted>@doit.com
  role: roles/resourcemanager.folderAdmin
- members:
  - user:<omitted>@doit.com
  role: roles/resourcemanager.folderEditor
etag: BwYsU4vSoEA=
version: 1

Une fois ce rôle attribué, les développeurs peuvent créer des clés à la demande au moment de la création de leurs ressources.

Étape 6 : créer des ressources avec Cloud KMS Autokey

Pour tester la configuration, créez une nouvelle instance Compute dans le projet que vous venez d'activer. Dans notre exemple, il s'agit du projet kms-enabled-proj. Sous Avancé, sélectionnez Chiffrement des données = Clé Cloud KMS et Type de clé = Cloud KMS avec Autokey, puis cliquez sur Request a Key.

création d'une instance GCE montrant l'onglet avancé et l'emplacement pour demander une clé

Une fois l'instance créée, les détails de la clé apparaissent dans la section Management des métadonnées de l'instance Compute.

détails de la clé

Retournez dans votre projet de clés KMS (kms-keys), puis accédez à Key Management : vous y verrez la nouvelle clé créée pour l'instance, ainsi que sa prochaine date de rotation.

key ring créé dans la même région que l'instance GCE

clé affichée avec sa prochaine date de rotation

Dans notre exemple, un key ring est créé dans us-central1, puisque c'est la région où réside notre instance Compute. Les key rings sont automatiquement créés dans la région qui héberge vos ressources.

Désactiver Cloud KMS avec Autokey

Si vous devez désactiver Cloud KMS avec Autokey, l'opération s'effectue au niveau du dossier. La désactivation supprime la configuration qui relie le dossier au projet de clés, ce qui empêche la création automatique de clés pour les nouvelles ressources. Les clés existantes créées par Cloud KMS avec Autokey ne sont, elles, pas affectées.

Désactivez pour stopper la création de clés. Les clés existantes ne sont pas affectées.

Étape facultative 1 : révoquer le rôle KMS Autokey Admin sur le dossier

Pour révoquer le rôle Autokey Admin :

gcloud resource-manager folders remove-iam-policy-binding FOLDER_ID --role=roles/cloudkms.autokeyAdmin --member=user:USER_EMAIL

Cette action révoque le rôle autokeyAdmin et empêche l'utilisateur de réactiver KMS Autokey ou d'en gérer la configuration. À noter toutefois que les clés existantes continueront de fonctionner et que les ressources précédemment chiffrées avec ces clés resteront sécurisées.

Étape facultative 2 : révoquer les rôles Autokey User

Vous pouvez également révoquer les rôles Autokey User au niveau du dossier ou du projet. Voici comment supprimer le rôle roles/cloudkms.autokeyUser :

gcloud resource-manager folders remove-iam-policy-binding FOLDER_ID - role=roles/cloudkms.autokeyUser - member=user:USER_EMAIL

Si l'agent de service n'est plus nécessaire, vous pouvez aussi lui retirer son rôle Cloud KMS Admin :

gcloud projects remove-iam-policy-binding KEY_PROJECT_NUMBER - role=roles/cloudkms.admin - member=serviceAccount:service-KEY_PROJECT_NUMBER@gcp-sa-cloudkms.iam.gserviceaccount.com

**Des questions ?**

Chez DoiT International, notre équipe est exclusivement composée d'ingénieurs seniors. Nous sommes spécialisés dans le conseil cloud avancé, la conception d'architectures et le débogage. Que vous fassiez vos premiers pas avec les systèmes distribués, que vous optimisiez un système existant ou que vous résolviez des problèmes complexes, nous vous apportons une expertise sur mesure adaptée à vos besoins.

Contactez-nous dès aujourd'hui pour exploiter pleinement le potentiel de votre infrastructure cloud.

Cloud KMS avec Autokey est un outil puissant qui facilite la gestion des clés de chiffrement dans Google Cloud. En automatisant la création et la rotation des clés, Autokey vous aide à appliquer les bonnes pratiques de sécurité, à réduire le risque d'erreur humaine et à étendre le chiffrement de manière transparente à toute votre infrastructure.

Maintenant que KMS Autokey est disponible en version générale, le moment est idéal pour l'adopter au sein de votre organisation. Que vous déployiez de nouvelles ressources ou que vous souhaitiez protéger vos workloads existants, Cloud KMS avec Autokey rend la gestion des clés à la fois plus simple et plus sûre.

Pour des guides détaillés et des références, consultez la documentation officielle de KMS Autokey.