Auf dieser Seite erfahren Sie, wie Sie einen Schlüssel automatisch oder manuell rotieren. Weitere Informationen zur Schlüsselrotation im Allgemeinen finden Sie unter Schlüsselrotation.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für den Schlüssel zuzuweisen, um die Berechtigungen zum Rotieren von Schlüsseln zu erhalten:
-
Cloud KMS-Administrator (
roles/cloudkms.admin
) -
Daten noch einmal verschlüsseln:
Cloud KMS CryptoKey-Verschlüsseler/Entschlüsseler (
roles/cloudkms.cryptoKeyEncrypterDecrypter
)
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Rotieren von Schlüsseln erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind zum Rotieren von Schlüsseln erforderlich:
-
Primärschlüsselversion ändern:
cloudkms.cryptoKeys.update
-
Automatische Drehung ändern oder deaktivieren:
cloudkms.cryptoKeys.update
-
Neue Schlüsselversion erstellen:
cloudkms.cryptoKeyVersions.create
-
Deaktivieren Sie alte Schlüsselversionen:
cloudkms.cryptoKeyVersions.update
-
Daten neu verschlüsseln:
-
cloudkms.cryptoKeyVersions.useToDecrypt
-
cloudkms.cryptoKeyVersions.useToEncrypt
-
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Ein einzelner Nutzer mit einer benutzerdefinierten Rolle mit all diesen Berechtigungen kann Schlüssel rotieren und Daten selbst wieder verschlüsseln. Nutzer mit der Rolle „Cloud KMS-Administrator“ und der Rolle „Cloud KMS CryptoKey-Verschlüsseler/-Entschlüsseler“ können gemeinsam Schlüssel rotieren und Daten noch einmal verschlüsseln. Beachten Sie beim Zuweisen von Rollen das Prinzip der geringsten Berechtigung. Weitere Informationen finden Sie unter Berechtigungen und Rollen.
Wenn Sie einen Schlüssel rotieren, werden Daten, die mit früheren Schlüsselversionen verschlüsselt wurden, nicht automatisch neu verschlüsselt. Weitere Informationen finden Sie unter Entschlüsseln und neu verschlüsseln. Durch die Rotation eines Schlüssels werden vorhandene Schlüsselversionen nicht automatisch deaktiviert oder gelöscht. Durch das Löschen nicht mehr benötigter Schlüsselversionen lassen sich Kosten senken.
Automatische Rotation konfigurieren
So konfigurieren Sie die automatische Rotation beim Erstellen eines neuen Schlüssels:
Console
Wenn Sie die Google Cloud Console zum Erstellen eines Schlüssels verwenden, legt Cloud KMS den Rotationszeitraum und die nächste Rotationszeit automatisch fest. Sie können die Standardwerte verwenden oder andere Werte angeben.
So können Sie beim Erstellen Ihres Schlüssels einen anderen Rotationszeitraum und einen anderen Beginn angeben, bevor Sie auf die Schaltfläche Erstellen klicken:
Wählen Sie für Schlüsselrotationszeitraum eine Option aus.
Wählen Sie unter Ab das Datum aus, an dem die erste automatische Rotation erfolgen soll. Sie können Ab auf dem Standardwert belassen, um die erste automatische Rotation einen Schlüsselrotationszeitraum nach dem Erstellen des Schlüssels zu starten.
gcloud
Wenn Sie Cloud KMS in der Befehlszeile verwenden möchten, müssen Sie zuerst die neueste Version der Google Cloud CLI installieren oder ein Upgrade ausführen.
gcloud kms keys create KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --purpose "encryption" \ --rotation-period ROTATION_PERIOD \ --next-rotation-time NEXT_ROTATION_TIME
Ersetzen Sie Folgendes:
KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältLOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.ROTATION_PERIOD
: das Intervall für die Schlüsselrotation, z. B.30d
, um den Schlüssel alle 30 Tage zu rotieren. Der Rotationszeitraum muss mindestens 1 Tag und höchstens 100 Jahre lang sein. Weitere Informationen finden Sie unter CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: Der Zeitstempel, zu dem die erste Rotation abgeschlossen werden soll, z. B.2023-01-01T01:02:03
. Sie können--next-rotation-time
weglassen, um die erste Rotation für einen Rotationszeitraum ab dem Datum zu planen, an dem Sie den Befehl ausführen. Weitere Informationen finden Sie unterCryptoKey.nextRotationTime
.
Wenn Sie Informationen zu allen Flags und möglichen Werten erhalten möchten, führen Sie den Befehl mit dem Flag --help
aus.
C#
Um diesen Code auszuführen, müssen Sie zuerst eine C#-Entwicklungsumgebung einrichten und das Cloud KMS C# SDK installieren.
Go
Um diesen Code auszuführen, müssen Sie zuerst eine Go-Entwicklungsumgebung einrichten und das Cloud KMS Go SDK installieren.
Java
Um diesen Code auszuführen, müssen Sie zuerst eine Java-Entwicklungsumgebung einrichten und das Cloud KMS Java SDK installieren.
Node.js
Um diesen Code auszuführen, richten Sie zuerst eine Node.js-Entwicklungsumgebung ein und installieren Sie das Cloud KMS Node.js SDK.
PHP
Um diesen Code auszuführen, müssen Sie zuerst PHP in Google Cloud verwenden lernen und das Cloud KMS PHP SDK installieren.
Python
Um diesen Code auszuführen, müssen Sie zuerst eine Python-Entwicklungsumgebung einrichten und das Cloud KMS Python SDK installieren.
Ruby
Um diesen Code auszuführen, müssen Sie zuerst eine Ruby-Entwicklungsumgebung einrichten und das Cloud KMS Ruby SDK installieren.
API
In diesen Beispielen wird curl als HTTP-Client verwendet, um die Verwendung der API zu demonstrieren. Weitere Informationen zur Zugriffssteuerung finden Sie unter Auf die Cloud KMS API zugreifen.
Verwenden Sie zum Erstellen eines Schlüssels die Methode CryptoKey.create
:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys?crypto_key_id=KEY_NAME" \ --request "POST" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{"purpose": "PURPOSE", "rotationPeriod": "ROTATION_PERIOD", "nextRotationTime": "NEXT_ROTATION_TIME"}'
Ersetzen Sie Folgendes:
PURPOSE
: den Zweck des Schlüssels.ROTATION_PERIOD
: das Intervall für die Schlüsselrotation, z. B.30d
, um den Schlüssel alle 30 Tage zu rotieren. Der Rotationszeitraum muss mindestens 1 Tag und höchstens 100 Jahre lang sein. Weitere Informationen finden Sie unter CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: Der Zeitstempel, zu dem die erste Rotation abgeschlossen werden soll, z. B.2023-01-01T01:02:03
. Weitere Informationen finden Sie unter:CryptoKey.nextRotationTime
.
So konfigurieren Sie die automatische Rotation für einen vorhandenen Schlüssel:
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Klicken Sie auf den Namen des Schlüsselbunds, der den Schlüssel enthält, für den Sie einen Rotationsplan hinzufügen möchten.
Klicken Sie auf den Schlüssel, dem Sie einen Rotationsplan hinzufügen möchten.
Klicken Sie in der Kopfzeile auf Rotationszeitraum bearbeiten.
Wählen Sie in der Eingabeaufforderung neue Werte für die Felder Rotationszeitraum und Beginnt am aus.
Klicken Sie in der Eingabeaufforderung auf Speichern.
gcloud
Wenn Sie Cloud KMS in der Befehlszeile verwenden möchten, müssen Sie zuerst die neueste Version der Google Cloud CLI installieren oder ein Upgrade ausführen.
gcloud kms keys update KEY_NAME \ --location LOCATION \ --keyring KEY_RING \ --rotation-period ROTATION_PERIOD \ --next-rotation-time NEXT_ROTATION_TIME
Ersetzen Sie Folgendes:
KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältLOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.ROTATION_PERIOD
: das Intervall für die Schlüsselrotation, z. B.30d
, um den Schlüssel alle 30 Tage zu rotieren. Der Rotationszeitraum muss mindestens 1 Tag und höchstens 100 Jahre lang sein. Weitere Informationen finden Sie unter CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: Der Zeitstempel, zu dem die nächste Rotation abgeschlossen werden soll, z. B.2023-01-01T01:02:03
. Sie können--next-rotation-time
weglassen, um die nächste Rotation für einen Rotationszeitraum ab dem Zeitpunkt der Ausführung des Befehls zu planen. Weitere Informationen finden Sie unterCryptoKey.nextRotationTime
.
Wenn Sie Informationen zu allen Flags und möglichen Werten erhalten möchten, führen Sie den Befehl mit dem Flag --help
aus.
C#
Um diesen Code auszuführen, müssen Sie zuerst eine C#-Entwicklungsumgebung einrichten und das Cloud KMS C# SDK installieren.
Go
Um diesen Code auszuführen, müssen Sie zuerst eine Go-Entwicklungsumgebung einrichten und das Cloud KMS Go SDK installieren.
Java
Um diesen Code auszuführen, müssen Sie zuerst eine Java-Entwicklungsumgebung einrichten und das Cloud KMS Java SDK installieren.
Node.js
Um diesen Code auszuführen, richten Sie zuerst eine Node.js-Entwicklungsumgebung ein und installieren Sie das Cloud KMS Node.js SDK.
PHP
Um diesen Code auszuführen, müssen Sie zuerst PHP in Google Cloud verwenden lernen und das Cloud KMS PHP SDK installieren.
Python
Um diesen Code auszuführen, müssen Sie zuerst eine Python-Entwicklungsumgebung einrichten und das Cloud KMS Python SDK installieren.
Ruby
Um diesen Code auszuführen, müssen Sie zuerst eine Ruby-Entwicklungsumgebung einrichten und das Cloud KMS Ruby SDK installieren.
API
In diesen Beispielen wird curl als HTTP-Client verwendet, um die Verwendung der API zu demonstrieren. Weitere Informationen zur Zugriffssteuerung finden Sie unter Auf die Cloud KMS API zugreifen.
Verwenden Sie die Methode CryptoKey.patch
, um einen Schlüssel zu aktualisieren:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME?updateMask=rotationPeriod,nextRotationTime" \ --request "PATCH" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{"rotationPeriod": "ROTATION_PERIOD", "nextRotationTime": "NEXT_ROTATION_TIME"}'
Ersetzen Sie Folgendes:
ROTATION_PERIOD
: das Intervall für die Schlüsselrotation, z. B.30d
, um den Schlüssel alle 30 Tage zu rotieren. Der Rotationszeitraum muss mindestens 1 Tag und höchstens 100 Jahre lang sein. Weitere Informationen finden Sie unter CryptoKey.rotationPeriod.NEXT_ROTATION_TIME
: Der Zeitstempel, zu dem die nächste Rotation abgeschlossen werden soll, z. B.2023-01-01T01:02:03
. Weitere Informationen finden Sie unter:CryptoKey.nextRotationTime
.
Schlüssel manuell rotieren
Erstellen Sie zuerst eine neue Schlüsselversion:
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Klicken Sie auf den Namen des Schlüsselbunds, der den Schlüssel enthält, für den Sie eine neue Schlüsselversion erstellen möchten.
Klicken Sie auf den Schlüssel, für den Sie eine neue Schlüsselversion erstellen möchten.
Klicken Sie in der Kopfzeile auf Rotieren.
Klicken Sie in der Eingabeaufforderung zur Bestätigung auf Rotieren.
gcloud
Wenn Sie Cloud KMS in der Befehlszeile verwenden möchten, müssen Sie zuerst die neueste Version der Google Cloud CLI installieren oder ein Upgrade ausführen.
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION
Ersetzen Sie Folgendes:
KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältLOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.
Schlüsselversionen werden sequenziell nummeriert.
Wenn Sie Informationen zu allen Flags und möglichen Werten erhalten möchten, führen Sie den Befehl mit dem Flag --help
aus.
C#
Um diesen Code auszuführen, müssen Sie zuerst eine C#-Entwicklungsumgebung einrichten und das Cloud KMS C# SDK installieren.
Go
Um diesen Code auszuführen, müssen Sie zuerst eine Go-Entwicklungsumgebung einrichten und das Cloud KMS Go SDK installieren.
Java
Um diesen Code auszuführen, müssen Sie zuerst eine Java-Entwicklungsumgebung einrichten und das Cloud KMS Java SDK installieren.
Node.js
Um diesen Code auszuführen, richten Sie zuerst eine Node.js-Entwicklungsumgebung ein und installieren Sie das Cloud KMS Node.js SDK.
PHP
Um diesen Code auszuführen, müssen Sie zuerst PHP in Google Cloud verwenden lernen und das Cloud KMS PHP SDK installieren.
Python
Um diesen Code auszuführen, müssen Sie zuerst eine Python-Entwicklungsumgebung einrichten und das Cloud KMS Python SDK installieren.
Ruby
Um diesen Code auszuführen, müssen Sie zuerst eine Ruby-Entwicklungsumgebung einrichten und das Cloud KMS Ruby SDK installieren.
API
In diesen Beispielen wird curl als HTTP-Client verwendet, um die Verwendung der API zu demonstrieren. Weitere Informationen zur Zugriffssteuerung finden Sie unter Auf die Cloud KMS API zugreifen.
Wenn Sie einen Schlüssel manuell rotieren möchten, erstellen Sie zuerst eine neue Schlüsselversion, indem Sie die Methode CryptoKeyVersions.create aufrufen.
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions" \ --request "POST" \ --header "authorization: Bearer TOKEN"
Mit diesem Befehl wird eine neue Schlüsselversion erstellt, die aber nicht als primäre Version festgelegt wird.
Informationen zum Festlegen der neuen Schlüsselversion als primäre Version finden Sie unter Vorhandene Version als primäre Schlüsselversion festlegen.
Falls erforderlich, verschlüsseln Sie Daten neu, die mit der vorherigen Schlüsselversion verschlüsselt wurden.
Vorhandene Version als primäre Schlüsselversion festlegen
Wenn Sie eine andere Schlüsselversion als primäre Version für einen Schlüssel festlegen möchten, aktualisieren Sie den Schlüssel mit den neuen primären Versionsinformationen. Eine Schlüsselversion muss aktiviert sein, bevor Sie sie als primäre Version konfigurieren können.
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Klicken Sie auf den Namen des Schlüsselbunds, der den Schlüssel enthält, dessen primäre Version Sie aktualisieren möchten.
Klicken Sie auf den Schlüssel, dessen primäre Version Sie aktualisieren möchten.
Klicken Sie in der Zeile für die Schlüsselversion, die Sie als primäre Version festlegen möchten, auf Mehr anzeigen
.Klicken Sie im Menü auf Als primäre Version festlegen.
Klicken Sie in der Bestätigungsaufforderung auf Als primäre E-Mail-Adresse festlegen.
gcloud
Wenn Sie Cloud KMS in der Befehlszeile verwenden möchten, müssen Sie zuerst die neueste Version der Google Cloud CLI installieren oder ein Upgrade ausführen.
gcloud kms keys update KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --primary-version KEY_VERSION
Ersetzen Sie Folgendes:
KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältLOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.- KEY_VERSION: die Versionsnummer der neuen Primärschlüsselversion.
Wenn Sie Informationen zu allen Flags und möglichen Werten erhalten möchten, führen Sie den Befehl mit dem Flag --help
aus.
C#
Um diesen Code auszuführen, müssen Sie zuerst eine C#-Entwicklungsumgebung einrichten und das Cloud KMS C# SDK installieren.
Go
Um diesen Code auszuführen, müssen Sie zuerst eine Go-Entwicklungsumgebung einrichten und das Cloud KMS Go SDK installieren.
Java
Um diesen Code auszuführen, müssen Sie zuerst eine Java-Entwicklungsumgebung einrichten und das Cloud KMS Java SDK installieren.
Node.js
Um diesen Code auszuführen, richten Sie zuerst eine Node.js-Entwicklungsumgebung ein und installieren Sie das Cloud KMS Node.js SDK.
PHP
Um diesen Code auszuführen, müssen Sie zuerst PHP in Google Cloud verwenden lernen und das Cloud KMS PHP SDK installieren.
Ruby
Um diesen Code auszuführen, müssen Sie zuerst eine Ruby-Entwicklungsumgebung einrichten und das Cloud KMS Ruby SDK installieren.
Python
Um diesen Code auszuführen, müssen Sie zuerst eine Python-Entwicklungsumgebung einrichten und das Cloud KMS Python SDK installieren.
API
In diesen Beispielen wird curl als HTTP-Client verwendet, um die Verwendung der API zu demonstrieren. Weitere Informationen zur Zugriffssteuerung finden Sie unter Auf die Cloud KMS API zugreifen.
Ändern Sie die primäre Schlüsselversion, indem Sie die Methode CryptoKey.updatePrimaryVersion aufrufen.
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME:updatePrimaryVersion" \ --request "POST" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{"cryptoKeyVersionId": "KEY_VERSION"}'
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.- KEY_VERSION: die Versionsnummer der neuen Primärschlüsselversion.
Wenn Sie die Primärschlüsselversion ändern, wird die Änderung in der Regel innerhalb von einer Minute konsistent. In Ausnahmefällen kann es jedoch bis zu drei Stunden dauern, bis die Änderung übernommen wird. Während dieser Zeit wird die vorherige primäre Version möglicherweise zum Verschlüsseln von Daten verwendet. Weitere Informationen finden Sie unter Konsistenz von Cloud KMS-Ressourcen.
Automatische Rotation deaktivieren
Löschen Sie den Rotationsplan des Schlüssels, um die automatische Rotation für einen Schlüssel zu deaktivieren:
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Klicken Sie auf den Namen des Schlüsselbunds, der den Schlüssel enthält, für den Sie den Rotationsplan entfernen möchten.
Klicken Sie auf den Schlüssel, von dem Sie den Rotationsplan entfernen möchten.
Klicken Sie in der Kopfzeile auf Rotationszeitraum bearbeiten.
Klicken Sie in der Eingabeaufforderung auf das Feld Rotationszeitraum und wählen Sie Nie (manuelle Rotation) aus.
Klicken Sie in der Eingabeaufforderung auf Speichern.
gcloud
Wenn Sie Cloud KMS in der Befehlszeile verwenden möchten, müssen Sie zuerst die neueste Version der Google Cloud CLI installieren oder ein Upgrade ausführen.
gcloud kms keys update KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --remove-rotation-schedule
Ersetzen Sie Folgendes:
KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältLOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.
Wenn Sie Informationen zu allen Flags und möglichen Werten erhalten möchten, führen Sie den Befehl mit dem Flag --help
aus.
C#
Um diesen Code auszuführen, müssen Sie zuerst eine C#-Entwicklungsumgebung einrichten und das Cloud KMS C# SDK installieren.
Go
Um diesen Code auszuführen, müssen Sie zuerst eine Go-Entwicklungsumgebung einrichten und das Cloud KMS Go SDK installieren.
Java
Um diesen Code auszuführen, müssen Sie zuerst eine Java-Entwicklungsumgebung einrichten und das Cloud KMS Java SDK installieren.
Node.js
Um diesen Code auszuführen, richten Sie zuerst eine Node.js-Entwicklungsumgebung ein und installieren Sie das Cloud KMS Node.js SDK.
PHP
Um diesen Code auszuführen, müssen Sie zuerst PHP in Google Cloud verwenden lernen und das Cloud KMS PHP SDK installieren.
Ruby
Um diesen Code auszuführen, müssen Sie zuerst eine Ruby-Entwicklungsumgebung einrichten und das Cloud KMS Ruby SDK installieren.
Python
Um diesen Code auszuführen, müssen Sie zuerst eine Python-Entwicklungsumgebung einrichten und das Cloud KMS Python SDK installieren.
API
In diesen Beispielen wird curl als HTTP-Client verwendet, um die Verwendung der API zu demonstrieren. Weitere Informationen zur Zugriffssteuerung finden Sie unter Auf die Cloud KMS API zugreifen.
Verwenden Sie die Methode CryptoKey.patch
, um einen Schlüssel zu aktualisieren:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME?updateMask=rotationPeriod,nextRotationTime" \ --request "PATCH" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{"rotationPeriod": null, "nextRotationTime": null}'
Weitere Informationen zu rotationPeriod
und nextRotationTime
finden Sie unter keyRings.cryptoKeys
.
Externen Schlüssel rotieren
Koordinierten externen Schlüssel rotieren
Sie können die automatische Rotation für symmetrisch koordinierte externe Schlüssel konfigurieren. Sie können auch manuell eine neue Schlüsselversion für symmetrische oder asymmetrische koordinierte externe Schlüssel erstellen.
Wenn Sie eine Schlüsselversion rotieren oder eine neue erstellen, werden alle neu erstellten Daten, die mit diesem Schlüssel geschützt sind, mit der neuen Schlüsselversion verschlüsselt. Daten, die mit einer vorherigen Schlüsselversion geschützt sind, werden nicht neu verschlüsselt. Daher muss Ihr externer Schlüsselmanager das Schlüsselmaterial der vorherigen Schlüsselversion weiterhin zur Verfügung stellen.
So erstellen Sie eine neue Schlüsselversion für einen koordinierten externen Schlüssel:
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Wählen Sie den Schlüsselbund und dann den Schlüssel aus.
Klicken Sie auf Create version (Version erstellen). In einer Meldung wird angezeigt, dass Ihre neue Schlüsselversion sowohl in Cloud KMS als auch in Ihrem externen Schlüsselverwaltungssystem generiert wird. Wenn das Feld Schlüsselpfad oder Schlüssel-URI angezeigt wird, ist der ausgewählte Schlüssel kein koordinierter externer Schlüssel.
Klicken Sie auf Version erstellen, um zu bestätigen, dass Sie eine neue Schlüsselversion erstellen möchten.
Der Status der neuen Schlüsselversion ist Generating pending (Generating pending). Bei symmetrischen Schlüsseln werden manuell erstellte Schlüsselversionen nicht automatisch als primäre Schlüsselversion festgelegt. Sie können die neue Schlüsselversion als primär festlegen.
gcloud-CLI
Wenn Sie eine neue Version eines symmetrischen Schlüssels erstellen und als primäre Schlüsselversion festlegen möchten, verwenden Sie den Befehl kms keys versions create
mit dem Flag --primary
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --primary
Ersetzen Sie Folgendes:
KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältLOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.
Verwenden Sie den Befehl kms keys versions
create
, um eine neue Version eines asymmetrischen Schlüssels oder eine neue Version eines symmetrischen Schlüssels zu erstellen, die nicht die Primärschlüsselversion ist:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION
Ersetzen Sie Folgendes:
KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältLOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.
Manuell verwaltetes Cloud EKM über VPC-Schlüssel rotieren
Rotieren Sie zuerst das externe Schlüsselmaterial in Ihrem externen Schlüsselverwaltungssystem. Wenn dadurch ein neuer Schlüsselpfad entsteht, müssen Sie den Cloud EKM-Schlüssel rotieren oder eine neue Schlüsselversion mit dem neuen Schlüsselpfad erstellen. Bei symmetrischen Verschlüsselungsschlüsseln rotieren Sie den Cloud EKM-Schlüssel und geben Sie den neuen Schlüsselpfad aus Ihrem externen Schlüsselmanager an. Erstellen Sie für asymmetrische Schlüssel eine neue Schlüsselversion und geben Sie den neuen Schlüsselpfad an.
Wenn Sie eine Schlüsselversion rotieren oder eine neue erstellen, werden alle neu erstellten Daten, die mit diesem Schlüssel geschützt sind, mit der neuen Schlüsselversion verschlüsselt. Daten, die mit einer vorherigen Schlüsselversion geschützt sind, werden nicht neu verschlüsselt. Daher muss Ihr externer Schlüsselmanager das Schlüsselmaterial der vorherigen Schlüsselversion weiterhin zur Verfügung stellen.
Wenn sich das Schlüsselmaterial im externen Schlüsselverwaltungspartnersystem nicht ändert, sich aber der Schlüsselpfad ändert, können Sie den externen Pfad des Schlüssels aktualisieren, ohne den Schlüssel zu rotieren.
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Wählen Sie den Schlüsselbund und dann den Schlüssel aus.
Klicken Sie auf Schlüssel rotieren.
Geben Sie unter Schlüsselpfad den Schlüsselpfad für die neue Version ein.
Klicken Sie zur Bestätigung auf Schlüssel drehen.
gcloud
Wenn Sie Cloud KMS in der Befehlszeile verwenden möchten, müssen Sie zuerst die neueste Version der Google Cloud CLI installieren oder ein Upgrade ausführen.
Wenn Sie eine neue Version eines symmetrischen Schlüssels erstellen und als primäre Schlüsselversion festlegen möchten, verwenden Sie den Befehl kms keys versions create
mit dem Flag --primary
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --ekm-connection-key-path EXTERNAL_KEY_PATH \ --primary
Ersetzen Sie Folgendes:
KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältLOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.EXTERNAL_KEY_PATH
: der Pfad zur neuen Version des externen Schlüssels.
Verwenden Sie den Befehl kms keys versions
create
, um eine neue Version eines asymmetrischen Schlüssels oder eine neue Version eines symmetrischen Schlüssels zu erstellen, die nicht die Primärschlüsselversion ist:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --ekm-connection-key-path EXTERNAL_KEY_PATH
Ersetzen Sie Folgendes:
KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältLOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.EXTERNAL_KEY_PATH
: der Pfad zur neuen Version des externen Schlüssels.
Wenn Sie Informationen zu allen Flags und möglichen Werten erhalten möchten, führen Sie den Befehl mit dem Flag --help
aus.
Nachdem die Schlüsselversion erfolgreich erstellt wurde, können Sie sie wie jede andere Cloud KMS-Schlüsselversion verwenden.
Manuell verwalteten Cloud EKM-Schlüssel über Internetschlüssel rotieren
Rotieren Sie zuerst das externe Schlüsselmaterial in Ihrem externen Schlüsselverwaltungssystem. Wenn dadurch ein neuer URI entsteht, müssen Sie den Cloud EKM-Schlüssel rotieren oder eine neue Schlüsselversion mit dem neuen URI erstellen. Bei symmetrischen Verschlüsselungsschlüsseln rotieren Sie den Cloud EKM-Schlüssel und geben Sie den neuen Schlüssel-URI aus Ihrem externen Schlüsselmanager an. Erstellen Sie für asymmetrische Schlüssel eine neue Schlüsselversion und geben Sie die neue Schlüssel-URI an.
Wenn Sie eine Schlüsselversion rotieren oder eine neue erstellen, werden alle neu erstellten Daten, die mit diesem Schlüssel geschützt sind, mit der neuen Schlüsselversion verschlüsselt. Daten, die mit einer vorherigen Schlüsselversion geschützt sind, werden nicht neu verschlüsselt. Daher muss Ihr externer Schlüsselmanager das Schlüsselmaterial der vorherigen Schlüsselversion weiterhin zur Verfügung stellen.
Wenn sich das Schlüsselmaterial im externen Schlüsselverwaltungspartnersystem nicht ändert, sich aber der URI ändert, können Sie den externen URI des Schlüssels aktualisieren, ohne den Schlüssel zu rotieren.
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Wählen Sie den Schlüsselbund und dann den Schlüssel aus.
Wählen Sie für symmetrische Schlüssel Schlüssel tauschen oder für asymmetrische Schlüssel Version erstellen aus.
Geben Sie den neuen Schlüssel-URI ein und wählen Sie für symmetrische Schlüssel Schlüssel rotieren oder für asymmetrische Schlüssel Version erstellen aus.
Die neue Schlüsselversion wird die Hauptversion.
gcloud-CLI
Wenn Sie eine neue Version eines symmetrischen Schlüssels erstellen und als primäre Schlüsselversion festlegen möchten, verwenden Sie den Befehl kms keys versions create
mit dem Flag --primary
:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --external-key-uri EXTERNAL_KEY_URI \ --primary
Ersetzen Sie Folgendes:
KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältLOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.EXTERNAL_KEY_URI
: der Schlüssel-URI der neuen externen Schlüsselversion.
Verwenden Sie den Befehl kms keys versions
create
, um eine neue Version eines asymmetrischen Schlüssels oder eine neue Version eines symmetrischen Schlüssels zu erstellen, die nicht die Primärschlüsselversion ist:
gcloud kms keys versions create \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --external-key-uri EXTERNAL_KEY_URI
Ersetzen Sie Folgendes:
KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältLOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.EXTERNAL_KEY_URI
: der Schlüssel-URI der neuen externen Schlüsselversion.
Nächste Schritte
- Nachdem Sie einen Schlüssel rotiert haben, können Sie die mit diesem Schlüssel verschlüsselten Daten erneut verschlüsseln.
- Nachdem Sie Ihre Daten neu verschlüsselt haben, können Sie prüfen, ob die Schlüsselversion verwendet wird.
- Nachdem Sie bestätigt haben, dass eine Schlüsselversion nicht mehr verwendet wird, können Sie sie löschen.