Cette page vous explique comment programmer la destruction définitive d'une version de clé Cloud Key Management Service. Dans Cloud KMS, le matériel de clé cryptographique que vous utilisez pour chiffrer, déchiffrer, signer et valider des données est stocké dans une version de clé. Une clé possède zéro, une ou plusieurs versions de clé. Lorsque vous effectuez la rotation d'une clé, vous créez une autre version de clé.
La destruction d'une version de clé signifie que le matériel de clé est définitivement supprimé. Lorsque vous détruisez une version de clé, les autres détails tels que le nom et le numéro de version de la clé ne sont pas supprimés. Une fois qu'une clé a été détruite, les données chiffrées avec la version de clé ne peuvent plus être déchiffrées.
La destruction de clé étant irréversible, Cloud KMS ne vous permet pas de détruire immédiatement des versions de clé. À la place, vous programmez la destruction d'une version de clé. La version de clé reste à l'state "Destruction programmée" pendant une période configurable. Pendant le délai de destruction programmée, vous pouvez restaurer une version de clé pour annuler sa destruction.
Par défaut, la destruction programmée est de 30 jours. Vous pouvez définir un délai personnalisé pour la destruction programmée d'une clé lors de sa création. Votre organisation peut appliquer une durée minimale de destruction programmée en définissant la contrainte Durée minimale de suppression planifiée par clé dans vos règles d'administration d'administration.
Vous pouvez également gérer l'accès à la clé à l'aide d'Identity and Access Management (IAM). Les opérations IAM sont cohérentes en quelques secondes. Pour en savoir plus, consultez la page Utiliser Cloud IAM.
Vous pouvez également désactiver temporairement une version de clé. Nous vous recommandons de désactiver les versions de clé avant de programmer leur destruction dans le cadre de vos procédures pour vous assurer que la clé peut être détruite en toute sécurité. En fonction de vos règles d'administration, vous devrez peut-être désactiver une version de clé avant de pouvoir programmer sa destruction. Pour en savoir plus sur le contrôle de la destruction des versions de clé à l'aide de règles d'administration, consultez la section Contrôler la destruction des versions de clé.
Dans la suite de cette rubrique, la programmation de la destruction d'une clé est appelée "détruire la clé", même si la destruction n'est pas immédiate.
Avant de commencer
Comprendre les risques
La destruction d'une version de clé est une opération permanente. La destruction d'une version de clé encore nécessaire présente des risques, y compris les suivants:
Interruption de service: si vous détruisez une clé nécessaire au démarrage d'un conteneur ou d'une instance, vos services ou vos applications peuvent devenir indisponibles.
Perte de données permanente: si vous détruisez une clé qui a servi à chiffrer des données, celles-ci deviennent indisponibles. Les données chiffrées à l'aide d'une clé détruite sont considérées comme déchirées de façon cryptographique. Dans certains cas, la destruction d'une clé peut entraîner la suppression définitive de ressources chiffrées.
Problèmes réglementaires ou de conformité: si vous détruisez une clé nécessaire pour accéder à des données soumises à une durée de conservation avant la fin de cette période, vous risquez de ne pas respecter une exigence réglementaire ou de conformité.
Rôles requis
Pour obtenir les autorisations nécessaires pour détruire et restaurer des versions de clé, demandez à votre administrateur de vous attribuer le rôle IAM Administrateur Cloud KMS (roles/cloudkms.admin
) sur la clé.
Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.
Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.
Vérifier si la version de clé est utilisée
Avant de détruire une version de clé, procédez comme suit pour voir si elle est utilisée:
Affichez les détails de suivi de l'utilisation de la clé. Si des ressources sont protégées par la version de clé que vous souhaitez détruire, rechiffrez-les avec une autre version de clé.
Activez les journaux pour tous les services ou applications susceptibles d'utiliser la version de clé.
Activez les journaux sur le projet Cloud KMS contenant la clé.
Désactivez la version de clé. La désactivation de la version de clé empêche son utilisation. Lorsque la version de clé est désactivée, toute tentative d'utilisation de la version de clé échoue.
Surveillez les journaux jusqu'à ce que vous soyez sûr qu'aucune application ni aucun service ne s'appuie encore sur la version de clé que vous avez désactivée. Si des erreurs indiquent un échec d'accès à la version de clé, configurez l'application ou la ressource pour qu'elle utilise une autre version de clé.
La durée de surveillance des journaux avant de détruire une version de clé dépend du type de clé, de son modèle d'utilisation et de son niveau de sensibilité. Par exemple, avant de détruire une version de clé utilisée dans un processus trimestriel, laissez la version de clé désactivée jusqu'à la fin du processus.
Vérifiez que l'utilisation de la clé respecte les exigences de conformité applicables. Par exemple, la version de clé et les données qui y sont chiffrées peuvent être soumises à des périodes de conservation des données.
Ces étapes vous aident à déterminer si une clé est toujours nécessaire. Toutefois, elles ne peuvent pas garantir qu'une version de clé n'est plus nécessaire. Votre organisation doit mettre en œuvre des procédures et des directives pour s'assurer que la destruction de la version de clé n'a pas d'effets négatifs.
Détruire une version de clé
Vous pouvez détruire une version de clé activée ou désactivée.
Console
Dans la console Google Cloud, accédez à la page Gestion des clés.
Cochez l'option située à côté de la version de clé dont vous souhaitez programmer la destruction.
Cliquez sur Détruire dans l'en-tête.
Dans l'invite de confirmation, saisissez le nom de la clé, puis cliquez sur Programmer la destruction.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par installer la dernière version de Google Cloud CLI ou une mise à niveau vers la dernière version.
gcloud kms keys versions destroy KEY_VERSION \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION
Remplacez les éléments suivants :
KEY_VERSION
: numéro de la version de clé que vous souhaitez détruire.KEY_NAME
: nom de la clé pour laquelle vous souhaitez détruire une version de clé.KEY_RING
: nom du trousseau de clés contenant la clé.LOCATION
: emplacement Cloud KMS du trousseau de clés
Pour en savoir plus sur toutes les options et valeurs possibles, exécutez la commande avec l'option --help
.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C#, puis installez le SDK Cloud KMS pour C#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go, puis installez le SDK Cloud KMS pour Go.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Cloud KMS pour Java.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js, puis installez le SDK Cloud KMS pour Node.js.
PHP
Pour exécuter ce code, commencez par en apprendre plus sur l'utilisation de PHP sur Google Cloud, puis installez le SDK Cloud KMS pour PHP.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python, puis installez le SDK Cloud KMS pour Python.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby, puis installez le SDK Cloud KMS pour Ruby.
API
Ces exemples utilisent curl comme client HTTP pour démontrer l'utilisation de l'API. Pour en savoir plus sur le contrôle des accès, consultez la page Accéder à l'API Cloud KMS.
Détruisez une version de clé en appelant la méthode CryptoKeyVersions.destroy.
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions/KEY_VERSION:destroy" \ --request "POST" \ --header "authorization: Bearer TOKEN"
Si vous ne parvenez pas à détruire une version de clé, votre organisation peut exiger que les versions de clé soient désactivées avant la destruction. Essayez de désactiver la version de clé avant de la détruire.
Lorsque vous envoyez la demande de destruction, la destruction de l'état de la version de clé est programmée. Une fois que la durée configurée pour la destruction programmée de la clé est écoulée, l'état de la version de clé est détruit, ce qui signifie que la suppression logique du matériel de clé des systèmes actifs commence et que le client ne peut pas récupérer le matériel de clé. Le matériel de clé peut rester dans les systèmes Google jusqu'à 45 jours à compter de la date de destruction programmée.
Pour recevoir une alerte lorsque la destruction d'une version de clé est programmée, consultez la page Utiliser Cloud Monitoring avec Cloud KMS.
Les versions de clé détruites ne sont pas des ressources facturées.
Détruire des clés externes
Pour supprimer définitivement l'association entre une clé Cloud EKM et une clé externe, vous pouvez détruire la version de clé. Une fois la période de Destruction programmée écoulée, la clé est détruite. Une fois la version de clé détruite, vous ne pouvez plus chiffrer, ni déchiffrer des données chiffrées avec la version de clé Cloud EKM.
La destruction d'une version de clé gérée manuellement dans Cloud KMS ne modifie pas la clé dans le gestionnaire de clés externe. Nous vous recommandons de commencer par détruire la clé ou la version de clé dans Google Cloud. Une fois la version de clé Cloud EKM détruite, vous pouvez détruire le matériel de clé dans le gestionnaire de clés externe.
La destruction d'une version de clé externe coordonnée dans Cloud KMS commence par la destruction de la version de clé dans Google Cloud, puis envoie une demande de destruction à l'EKM pour détruire le matériel de clé externe.
Restaurer une version de clé
Au cours de la période où la destruction de l'état d'une version de clé est programmée, vous pouvez restaurer la version de clé en envoyant une demande de restauration.
Console
Accédez à la page Gestion des clés dans la console Google Cloud.
Cliquez sur le nom du trousseau de clés contenant la clé dont vous souhaitez restaurer la version.
Cliquez sur la clé dont vous souhaitez restaurer la version.
Cochez l'option située à côté de la version de clé que vous souhaitez restaurer.
Cliquez sur Restaurer dans l'en-tête.
Dans l'invite de confirmation, cliquez sur Restaurer.
gcloud
Pour utiliser Cloud KMS sur la ligne de commande, commencez par installer la dernière version de Google Cloud CLI ou une mise à niveau vers la dernière version.
gcloud kms keys versions restore key-version \ --key key \ --keyring key-ring \ --location location
Remplacez key-version par la version de la clé à restaurer. Remplacez key par le nom de la clé. Remplacez key-ring par le nom du trousseau de clés où se trouve la clé. Remplacez location par l'emplacement Cloud KMS du trousseau de clés.
Pour en savoir plus sur toutes les options et valeurs possibles, exécutez la commande avec l'option --help
.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C#, puis installez le SDK Cloud KMS pour C#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go, puis installez le SDK Cloud KMS pour Go.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Cloud KMS pour Java.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js, puis installez le SDK Cloud KMS pour Node.js.
PHP
Pour exécuter ce code, commencez par en apprendre plus sur l'utilisation de PHP sur Google Cloud, puis installez le SDK Cloud KMS pour PHP.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python, puis installez le SDK Cloud KMS pour Python.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby, puis installez le SDK Cloud KMS pour Ruby.
API
Ces exemples utilisent curl comme client HTTP pour démontrer l'utilisation de l'API. Pour en savoir plus sur le contrôle des accès, consultez la page Accéder à l'API Cloud KMS.
Restaurez une version de clé en appelant la méthode CryptoKeyVersions.restore.
curl "https://cloudkms.googleapis.com/v1/projects/project-id/locations/location-id/keyRings/key-ring-id/cryptoKeys/crypto-key-id/cryptoKeyVersions/version-id:restore" \ --request "POST" \ --header "authorization: Bearer token"
Une fois la requête de restauration terminée, l'état de la version de clé est désactivé. Vous devez l'activer pour pouvoir l'utiliser.
Autorisations IAM requises
Pour détruire une version de clé, l'appelant doit disposer de l'autorisation IAM cloudkms.cryptoKeyVersions.destroy
sur la clé, le trousseau de clés, ou le projet, le dossier ou l'organisation.
Pour restaurer une version de clé, l'appelant doit disposer de l'autorisation cloudkms.cryptoKeyVersions.restore
.
Ces deux autorisations sont accordées au rôle d'administrateur Cloud KMS (roles/cloudkms.admin
).
Calendrier de suppression
Cloud KMS s'engage à supprimer le matériel de clé client de toute l'infrastructure Google dans les 45 jours suivant la destruction programmée. Cela inclut la suppression des données des systèmes actifs et des sauvegardes du centre de données. Les autres données client sont soumises au calendrier de suppression Google Cloud standard de 180 jours.