In diesem Dokument wird beschrieben, wie Sie Cloud Key Management Service-Schlüssel und ‑Schlüsselversionen dauerhaft löschen. Dieser Vorgang kann nicht rückgängig gemacht werden.
In Cloud KMS sind das Löschen und das Vernichten unterschiedliche Vorgänge:
Löschen: Deaktiviert eine Schlüsselversion dauerhaft und löscht das zugrunde liegende Schlüsselmaterial nach dem angegebenen Löschzeitraum unwiderruflich. Eine Schlüsselversion im Status
DESTROYEDkann nicht für kryptografische Vorgänge verwendet werden und wird nicht mehr abgerechnet. Sie können eine Schlüsselversion, die zum Verschlüsseln von Daten verwendet wurde, löschen, um Daten kryptografisch zu vernichten, die dauerhaft nicht wiederhergestellt werden sollen. Gelöschte Schlüsselversionen sind weiterhin in Listen von Cloud KMS-Ressourcen enthalten.Löschen: Entfernt einen Schlüssel oder eine Schlüsselversion aus Listen von Cloud KMS-Ressourcen in der Google Cloud Console, der Google Cloud CLI, der Cloud Key Management Service API und den Clientbibliotheken. Bei Projekten mit vielen Schlüsseln oder Schlüsselversionen, die nicht mehr aktiv sind, wird durch das Löschen die Suche und die Listenbearbeitung optimiert. Gelöschte CryptoKey-Namen können nicht wiederverwendet werden. Mit der Methode
retiredResources.listkönnen Sie eine Liste der gelöschten CryptoKey-Namen aufrufen, die nicht wiederverwendet werden können.
Hinweise
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Cloud KMS-Administrator (roles/cloudkms.admin) für den Schlüssel zuzuweisen, damit Sie die Berechtigungen erhalten, die Sie zum Löschen und Aufrufen von Cloud KMS-Ressourcen benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierte Rolle enthält die Berechtigungen, die zum Löschen und Aufrufen von Cloud KMS-Ressourcen erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen, um die notwendigen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind zum Löschen und Aufrufen von Cloud KMS-Ressourcen erforderlich:
-
So löschen Sie eine Schlüsselversion:
cloudkms.cryptoKeyVersions.delete -
So löschen Sie einen Schlüssel:
cloudkms.cryptoKeys.delete -
So rufen Sie gelöschte Ressourcen auf:
-
cloudkms.retiredResources.get -
cloudkms.retiredResources.list
-
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Schlüsselversion löschen
Sie können eine Schlüsselversion löschen, wenn sie sich im Status DESTROYED, IMPORT_FAILED oder GENERATION_FAILED befindet. Wenn die Schlüsselversion importiert wurde, kann sie nur gelöscht werden, wenn der Import fehlgeschlagen ist.
So löschen Sie eine Schlüsselversion endgültig:
gcloud
Führen Sie den folgenden Befehl aus, um eine Schlüsselversion zu löschen:
gcloud kms keys versions delete KEY_VERSION \
--location=LOCATION \
--keyring=KEY_RING \
--key=KEY_NAME
Ersetzen Sie Folgendes:
KEY_VERSION: Die Nummer der Schlüsselversion, die Sie endgültig löschen möchten. Die angegebene Schlüsselversion muss den StatusDESTROYED,IMPORT_FAILEDoderGENERATION_FAILEDhaben.LOCATION: der Cloud KMS-Speicherort des Schlüsselbunds.KEY_RING: der Name des Schlüsselbunds, der den Schlüssel enthältKEY_NAME: Der Name des Schlüssels, der die Schlüsselversion enthält, die Sie endgültig löschen möchten.
REST
Rufen Sie zum Löschen einer Schlüsselversion die Methode
cryptoKeyVersions.deleteauf. Diese Methode gibt einen Vorgang mit langer Ausführungszeit zurück, den Sie abfragen können, um zu bestätigen, dass die Schlüsselversion gelöscht wurde.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"
Ersetzen Sie Folgendes:
PROJECT_ID: die ID des Projekts, das den Schlüsselbund enthält.LOCATION: der Cloud KMS-Speicherort des Schlüsselbunds.KEY_RING: der Name des Schlüsselbunds, der den Schlüssel enthältKEY_NAME: Der Name des Schlüssels, der die Schlüsselversion enthält, die Sie endgültig löschen möchten.KEY_VERSION: Die Nummer der Schlüsselversion, die Sie endgültig löschen möchten. Die angegebene Schlüsselversion muss den StatusDESTROYED,IMPORT_FAILEDoderGENERATION_FAILEDhaben.
Die Ausgabe des Befehls gibt eine
Operationzurück. Sie benötigen dienamedes Vorgangs für den nächsten Schritt.Um zu bestätigen, dass die Schlüsselversion gelöscht wurde, können Sie die Methode
operations.getaufrufen:curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_NAME" \ --request "GET" \ --header "authorization: Bearer TOKEN"Ersetzen Sie Folgendes:
PROJECT_ID: die ID des Projekts, das den Schlüsselbund enthält.LOCATION: der Cloud KMS-Speicherort des Schlüsselbunds.OPERATION_NAME: Der Name des Vorgangs, der von der vorherigen Methode zurückgegeben wurde.
Wenn die Ausgabe dieser Methode zeigt, dass
donetrueist, ist der Vorgang abgeschlossen. Wenn keinerrorangegeben ist, wurde die Schlüsselversion endgültig gelöscht.
Schlüssel löschen
Sie können einen Schlüssel löschen, wenn er die folgenden Bedingungen erfüllt:
- Der Schlüssel enthält keine Schlüsselversionen, die noch nicht gelöscht wurden.
- Für den Schlüssel ist keine automatische Schlüsselrotation geplant.
- Der Schlüssel wurde nicht von Cloud KMS Autokey erstellt.
So löschen Sie einen Schlüssel endgültig:
gcloud
Führen Sie den folgenden Befehl aus, um einen Schlüssel zu löschen:
gcloud kms keys delete KEY_NAME \
--location=LOCATION \
--keyring=KEY_RING
Ersetzen Sie Folgendes:
KEY_NAME: Der Name des Schlüssels, den Sie endgültig löschen möchten. Der Schlüssel darf keine Schlüsselversionen enthalten, die noch nicht gelöscht wurden, und darf kein Schlüssel sein, der von Autokey erstellt wurde.LOCATION: der Cloud KMS-Speicherort des Schlüsselbunds.KEY_RING: der Name des Schlüsselbunds, der den Schlüssel enthält
REST
Rufen Sie zum Löschen eines Schlüssels die Methode
cryptoKey.deleteauf. Diese Methode gibt einen lange laufenden Vorgang zurück, den Sie abfragen können, um zu bestätigen, dass der Schlüssel gelöscht wurde.curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME" \ --request "DELETE" \ --header "authorization: Bearer TOKEN"
Ersetzen Sie Folgendes:
PROJECT_ID: die ID des Projekts, das den Schlüsselbund enthält.LOCATION: der Cloud KMS-Speicherort des Schlüsselbunds.KEY_RING: der Name des Schlüsselbunds, der den Schlüssel enthältKEY_NAME: Der Name des Schlüssels, den Sie endgültig löschen möchten. Der Schlüssel darf keine Schlüsselversionen enthalten, die noch nicht gelöscht wurden, und darf kein Schlüssel sein, der von Autokey erstellt wurde.
Die Ausgabe des Befehls gibt eine
Operationzurück. Sie benötigen dienamedes Vorgangs für den nächsten Schritt.Sie können mit der Methode
operations.getprüfen, ob der Schlüssel gelöscht wurde:curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_NAME" \ --request "GET" \ --header "authorization: Bearer TOKEN"Ersetzen Sie Folgendes:
PROJECT_ID: die ID des Projekts, das den Schlüsselbund enthält.LOCATION: der Cloud KMS-Speicherort des Schlüsselbunds.OPERATION_NAME: der Name des Vorgangs, der von der vorherigen Methode zurückgegeben wurde.
Wenn in der Ausgabe dieser Methode
donealstrueangezeigt wird, ist der Vorgang abgeschlossen. Wenn keinerrorangegeben ist, wurde der Schlüssel dauerhaft gelöscht.
Namen der eingestellten Ressourcen ansehen
Die Namen von gelöschten Schlüsseln können im selbenGoogle Cloud -Projekt nicht wiederverwendet werden. So wird verhindert, dass zwei verschiedene Schlüssel denselben Ressourcen-Identifier haben. Namen gelöschter Schlüssel werden in retiredResources-Objekten gespeichert. Sie können retiredResources abfragen, um Namen aufzurufen, die nicht für neue Cloud KMS-Ressourcen wiederverwendet werden können.
So rufen Sie eine Liste aller eingestellten Ressourcen auf:
gcloud
Führen Sie dazu diesen Befehl aus:
gcloud kms retired-resources list \
--location=LOCATION
Ersetzen Sie Folgendes:
LOCATION: Der Standort, an dem Sie eingestellte Ressourcen ansehen möchten.
REST
Verwenden Sie die Methode retiredResources.list:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/retiredResources/" \
--request "GET" \
--header "authorization: Bearer TOKEN"
Ersetzen Sie Folgendes:
PROJECT_ID: die Kennung des Projekts, in dem Sie eingestellte Ressourcen ansehen möchten.LOCATION: Der Standort, an dem Sie eingestellte Ressourcen ansehen möchten.
So rufen Sie Metadaten für eine einzelne eingestellte Ressource auf:
gcloud
Führen Sie dazu diesen Befehl aus:
gcloud kms retired-resources describe RETIRED_RESOURCE \
--location=LOCATION
Ersetzen Sie Folgendes:
RETIRED_RESOURCE: Der Name der Ressource, die Sie aufrufen möchten.LOCATION: Der Standort, an dem Sie eine eingestellte Ressource ansehen möchten.
REST
Verwenden Sie die Methode retiredResources.get:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/retiredResources/RETIRED_RESOURCE" \
--request "GET" \
--header "authorization: Bearer TOKEN"
Ersetzen Sie Folgendes:
PROJECT_ID: die Kennung des Projekts, in dem Sie eine eingestellte Ressource ansehen möchten.LOCATION: Der Standort, an dem Sie eine eingestellte Ressource ansehen möchten.RETIRED_RESOURCE: Der Name der Ressource, die Sie aufrufen möchten.
Die Ausgabe dieser Methode enthält die resourceType, die deleteTime und den vollständigen Ressourcen-Identifier der gelöschten Ressource.