Ce document explique comment supprimer définitivement des ressources Cloud Key Management Service. Les types de ressources Cloud KMS suivants peuvent être supprimés :
- Trousseaux de clés
- Clés
- Versions de clé
Cette opération est irréversible. Pour connaître les limites spécifiques aux ressources, consultez la section correspondante de ce document.
Dans Cloud KMS, la destruction et la suppression sont des opérations différentes :
Destruction : désactive définitivement une version de clé, y compris en détruisant de manière irréversible le matériel de clé sous-jacent après la période de destruction spécifiée. Une version de clé à l'état
DESTROYEDne peut pas être utilisée pour des opérations cryptographiques et n'est plus facturée. Vous pouvez détruire une version de clé qui a été utilisée pour chiffrer des données afin de crypto-supprimer les données que vous souhaitez rendre définitivement irrécupérables. Les versions de clé détruites sont toujours incluses dans les listes de ressources Cloud KMS.Suppression : supprime un trousseau de clés, une clé ou une version de clé des listes de ressources Cloud KMS dans la console Google Cloud , Google Cloud CLI, l'API Cloud Key Management Service et les bibliothèques clientes. Pour les projets comportant de nombreux trousseaux de clés, clés ou versions de clés qui ne sont plus actifs, la suppression simplifie les opérations de recherche et de listage. Lorsque vous supprimez un trousseau de clés, son nom peut être réutilisé. Toutefois, les noms des clés de chiffrement supprimées ne peuvent pas être réutilisés. Vous pouvez afficher la liste des noms de CryptoKey supprimées qui ne peuvent pas être réutilisés à l'aide de la méthode
retiredResources.list.
Avant de commencer
Pour obtenir les autorisations nécessaires pour supprimer et afficher des ressources Cloud KMS, demandez à votre administrateur de vous accorder le rôle IAM Administrateur Cloud KMS (roles/cloudkms.admin) sur la clé.
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ce rôle prédéfini contient les autorisations requises pour supprimer et afficher des ressources Cloud KMS. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour supprimer et afficher des ressources Cloud KMS :
-
Pour supprimer une version de clé :
cloudkms.cryptoKeyVersions.delete -
Pour supprimer une clé :
cloudkms.cryptoKeys.delete -
Pour supprimer un trousseau de clés :
cloudkms.keyRings.delete -
Pour afficher les ressources supprimées :
-
cloudkms.retiredResources.get -
cloudkms.retiredResources.list
-
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Supprimer une version de clé
Vous pouvez supprimer une version de clé si elle est à l'état DESTROYED, IMPORT_FAILED ou GENERATION_FAILED. Si la version de clé a été importée, elle ne peut être supprimée que si l'importation a échoué.
Pour supprimer définitivement une version de clé, procédez comme suit :
Console
Dans la console Google Cloud , accédez à la page Gestion des clés.
Cliquez sur le nom du trousseau de clés contenant la clé et la version de clé que vous souhaitez supprimer.
Cliquez sur la clé contenant la version de clé que vous souhaitez supprimer.
Dans le tableau Versions, recherchez la version de clé que vous souhaitez supprimer, puis cliquez sur Autres actions.
Dans le menu Autres actions, cliquez sur Supprimer.
Dans l'invite de confirmation, saisissez le nom de la clé, puis cliquez sur Supprimer.
gcloud
Pour supprimer une version de clé, exécutez la commande suivante :
gcloud kms keys versions delete KEY_VERSION \
--location=LOCATION \
--keyring=KEY_RING \
--key=KEY_NAME
Remplacez les éléments suivants :
KEY_VERSION: numéro de la version de clé que vous souhaitez supprimer définitivement. La version de clé indiquée doit être à l'étatDESTROYED,IMPORT_FAILEDouGENERATION_FAILED.LOCATION: emplacement Cloud KMS du trousseau de clés.KEY_RING: nom du trousseau de clés qui inclut la cléKEY_NAME: nom de la clé contenant la version de clé que vous souhaitez supprimer définitivement.
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour Cloud KMS, consultez Bibliothèques clientes Cloud KMS.
Pour vous authentifier auprès de Cloud KMS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Cloud KMS, consultez Bibliothèques clientes Cloud KMS.
Pour vous authentifier auprès de Cloud KMS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Cloud KMS, consultez Bibliothèques clientes Cloud KMS.
Pour vous authentifier auprès de Cloud KMS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
API
Pour supprimer une version de clé, appelez la méthode
cryptoKeyVersions.delete. Cette méthode renvoie une opération de longue durée que vous pouvez interroger pour confirmer que la version de clé a été supprimée.curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions/KEY_VERSION" \ --request "DELETE" \ --header "authorization: Bearer TOKEN"
Remplacez les éléments suivants :
PROJECT_ID: ID du projet contenant le trousseau de clés.LOCATION: emplacement Cloud KMS du trousseau de clés.KEY_RING: nom du trousseau de clés qui inclut la cléKEY_NAME: nom de la clé contenant la version de clé que vous souhaitez supprimer définitivement.KEY_VERSION: numéro de la version de clé que vous souhaitez supprimer définitivement. La version de clé indiquée doit être à l'étatDESTROYED,IMPORT_FAILEDouGENERATION_FAILED.
Le résultat de la commande renvoie un
Operation. Vous aurez besoin de l'IDnamede l'opération pour l'étape suivante.Pour confirmer que la version de clé a été supprimée, vous pouvez appeler la méthode
operations.get:curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_NAME" \ --request "GET" \ --header "authorization: Bearer TOKEN"Remplacez les éléments suivants :
PROJECT_ID: ID du projet contenant le trousseau de clés.LOCATION: emplacement Cloud KMS du trousseau de clés.OPERATION_NAME: nom de l'opération renvoyé par la méthode précédente.
Lorsque le résultat de cette méthode indique que
doneesttrue, l'opération est terminée. Si aucunerrorn'est indiqué, la version de la clé a été définitivement supprimée.
Supprimer une clé
Vous pouvez supprimer une clé si elle remplit les conditions suivantes :
- La clé ne contient aucune version de clé qui n'a pas encore été supprimée.
- La rotation automatique des clés n'est pas planifiée pour la clé.
- La clé n'a pas été créée par Cloud KMS Autokey.
Pour supprimer définitivement une clé, procédez comme suit :
Console
Dans la console Google Cloud , accédez à la page Gestion des clés.
Cliquez sur le nom du trousseau de clés contenant la clé que vous souhaitez supprimer.
Sur la ligne de la clé que vous souhaitez supprimer, cliquez sur Actions sur la clé, puis sur Supprimer.
Dans l'invite de confirmation, saisissez le nom de la clé, puis cliquez sur Supprimer.
gcloud
Pour supprimer une clé, exécutez la commande suivante :
gcloud kms keys delete KEY_NAME \
--location=LOCATION \
--keyring=KEY_RING
Remplacez les éléments suivants :
KEY_NAME: nom de la clé que vous souhaitez supprimer définitivement. La clé ne doit pas contenir de versions de clé qui n'ont pas déjà été supprimées, et elle ne doit pas avoir été créée par Autokey.LOCATION: emplacement Cloud KMS du trousseau de clés.KEY_RING: nom du trousseau de clés qui inclut la clé
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour Cloud KMS, consultez Bibliothèques clientes Cloud KMS.
Pour vous authentifier auprès de Cloud KMS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Cloud KMS, consultez Bibliothèques clientes Cloud KMS.
Pour vous authentifier auprès de Cloud KMS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Cloud KMS, consultez Bibliothèques clientes Cloud KMS.
Pour vous authentifier auprès de Cloud KMS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
API
Pour supprimer une clé, appelez la méthode
cryptoKey.delete. Cette méthode renvoie une opération de longue durée que vous pouvez interroger pour confirmer que la clé a été supprimée.curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME" \ --request "DELETE" \ --header "authorization: Bearer TOKEN"
Remplacez les éléments suivants :
PROJECT_ID: ID du projet contenant le trousseau de clés.LOCATION: emplacement Cloud KMS du trousseau de clés.KEY_RING: nom du trousseau de clés qui inclut la cléKEY_NAME: nom de la clé que vous souhaitez supprimer définitivement. La clé ne doit pas contenir de versions de clé qui n'ont pas déjà été supprimées, et elle ne doit pas avoir été créée par Autokey.
Le résultat de la commande renvoie un
Operation. Vous aurez besoin de l'IDnamede l'opération pour l'étape suivante.Pour confirmer que la clé a été supprimée, vous pouvez appeler la méthode
operations.get:curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_NAME" \ --request "GET" \ --header "authorization: Bearer TOKEN"Remplacez les éléments suivants :
PROJECT_ID: ID du projet contenant le trousseau de clés.LOCATION: emplacement Cloud KMS du trousseau de clés.OPERATION_NAME: nom de l'opération renvoyé par la méthode précédente.
Lorsque le résultat de cette méthode indique que
doneesttrue, l'opération est terminée. Si aucunerrorn'est indiqué, la clé a été définitivement supprimée.
Supprimer un trousseau de clés
Vous pouvez supprimer un trousseau de clés s'il remplit les conditions suivantes :
- Toutes les clés du trousseau doivent être supprimées.
- Tous les jobs d'importation du trousseau de clés doivent avoir expiré.
Lorsque vous supprimez un trousseau de clés, son nom peut être réutilisé dans un délai d'environ 5 à 10 minutes.
Pour supprimer définitivement un trousseau de clés, procédez comme suit :
Console
Dans la console Google Cloud , accédez à la page Gestion des clés.
Sur la ligne du trousseau de clés que vous souhaitez supprimer, cliquez sur Actions sur le trousseau de clés, puis sur Supprimer.
Dans l'invite de confirmation, saisissez le nom du trousseau de clés, puis cliquez sur Supprimer.
gcloud
Pour supprimer un trousseau de clés, exécutez la commande suivante :
gcloud kms keyrings delete KEY_RING \
--location=LOCATION \
Remplacez les éléments suivants :
KEY_RING: nom du trousseau de clés que vous souhaitez supprimer définitivement. Le trousseau de clés ne doit contenir aucune clé ni aucun job d'importation à l'étatACTIVE.LOCATION: emplacement Cloud KMS du trousseau de clés.
API
Pour supprimer un trousseau de clés, appelez la méthode
keyRings.delete. Cette méthode renvoie une opération de longue durée que vous pouvez interroger pour confirmer que le trousseau de clés a été supprimé.curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING" \ --request "DELETE" \ --header "authorization: Bearer TOKEN"
Remplacez les éléments suivants :
PROJECT_ID: ID du projet contenant le trousseau de clés.LOCATION: emplacement Cloud KMS du trousseau de clés.KEY_RING: nom du trousseau de clés que vous souhaitez supprimer définitivement. Le trousseau de clés ne doit contenir aucune clé ni aucun job d'importation à l'étatACTIVE.
Le résultat de la commande renvoie un
Operation. Vous aurez besoin de l'IDnamede l'opération pour l'étape suivante.Pour confirmer que le trousseau de clés a été supprimé, vous pouvez appeler la méthode
operations.get:curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_NAME" \ --request "GET" \ --header "authorization: Bearer TOKEN"Remplacez les éléments suivants :
PROJECT_ID: ID du projet contenant le trousseau de clés.LOCATION: emplacement Cloud KMS du trousseau de clés.OPERATION_NAME: nom de l'opération renvoyé par la méthode précédente.
Lorsque le résultat de cette méthode indique que
doneesttrue, l'opération est terminée. Si aucunerrorn'est indiqué, cela signifie que le trousseau de clés a été définitivement supprimé.
Afficher les noms des ressources retirées
Les noms des clés qui ont été supprimées ne peuvent pas être réutilisés dans le même projetGoogle Cloud . Cela évite que deux clés différentes aient le même identifiant de ressource. Les noms des clés supprimées sont stockés dans des objets retiredResources. Vous pouvez interroger retiredResources pour afficher les noms qui ne peuvent pas être réutilisés pour de nouvelles ressources Cloud KMS.
Pour afficher la liste de toutes les ressources retirées, procédez comme suit :
gcloud
Exécutez la commande suivante :
gcloud kms retired-resources list \
--location=LOCATION
Remplacez les éléments suivants :
LOCATION: emplacement où vous souhaitez afficher les ressources mises hors service.
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour Cloud KMS, consultez Bibliothèques clientes Cloud KMS.
Pour vous authentifier auprès de Cloud KMS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Cloud KMS, consultez Bibliothèques clientes Cloud KMS.
Pour vous authentifier auprès de Cloud KMS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Cloud KMS, consultez Bibliothèques clientes Cloud KMS.
Pour vous authentifier auprès de Cloud KMS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
API
Exécutez la méthode retiredResources.list :
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/retiredResources/" \
--request "GET" \
--header "authorization: Bearer TOKEN"
Remplacez les éléments suivants :
PROJECT_ID: identifiant du projet dans lequel vous souhaitez afficher les ressources mises hors service.LOCATION: emplacement où vous souhaitez afficher les ressources mises hors service.
Pour afficher les métadonnées d'une ressource retirée, procédez comme suit :
gcloud
Exécutez la commande suivante :
gcloud kms retired-resources describe RETIRED_RESOURCE \
--location=LOCATION
Remplacez les éléments suivants :
RETIRED_RESOURCE: nom de la ressource que vous souhaitez afficher.LOCATION: emplacement où vous souhaitez afficher une ressource retirée.
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour Cloud KMS, consultez Bibliothèques clientes Cloud KMS.
Pour vous authentifier auprès de Cloud KMS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Cloud KMS, consultez Bibliothèques clientes Cloud KMS.
Pour vous authentifier auprès de Cloud KMS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Cloud KMS, consultez Bibliothèques clientes Cloud KMS.
Pour vous authentifier auprès de Cloud KMS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
API
Utilisez la méthode retiredResources.get :
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/retiredResources/RETIRED_RESOURCE" \
--request "GET" \
--header "authorization: Bearer TOKEN"
Remplacez les éléments suivants :
PROJECT_ID: identifiant du projet dans lequel vous souhaitez afficher une ressource retirée.LOCATION: emplacement où vous souhaitez afficher une ressource retirée.RETIRED_RESOURCE: nom de la ressource que vous souhaitez afficher.
Le résultat de la méthode inclut l'resourceType, l'deleteTime et l'identifiant de ressource complet de la ressource supprimée.
Étapes suivantes
- En savoir plus sur la destruction et la restauration de versions de clé