Auf dieser Seite wird gezeigt, wie Sie einen symmetrischen Verschlüsselungsschlüssel erstellen.
Sie können auch einen asymmetrischen Schlüssel, einen Cloud HSM-Schlüssel oder einen Cloud External Key Manager-Schlüssel erstellen.
Übersicht
Wenn Sie einen Schlüssel erstellen, fügen Sie ihn einem Schlüsselbund an einem bestimmten Google Cloud-Speicherort hinzu. Sie können einen neuen Schlüsselbund erstellen oder einen vorhandenen verwenden. In diesem Thema erstellen Sie einen neuen Schlüsselbund und fügen ihm einen neuen Schlüssel hinzu.
Schlüsselbund erstellen
Führen Sie die folgenden Schritte aus, um einen Schlüsselbund für Ihren neuen Schlüssel zu erstellen. Wenn Sie stattdessen einen vorhandenen Schlüsselbund verwenden möchten, können Sie einen Schlüssel erstellen.
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Klicken Sie auf Schlüsselbund erstellen.
Geben Sie im Feld Schlüsselbundname den gewünschten Namen für den Schlüsselbund ein.
Wählen Sie im Drop-down-Menü Schlüsselbundort einen Standort wie
"us-east1"
aus.Klicken Sie auf Erstellen.
gcloud CLI
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 auf diese Version durchführen.
gcloud kms keyrings create key-ring \ --location location
Geben Sie für key-ring einen Namen für die Schlüsselbund an. Ersetzen Sie location durch den Cloud KMS-Standort für den Schlüsselbund und seine Schlüssel.
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.
curl "https://cloudkms.googleapis.com/v1/projects/project-id/locations/location-id/keyRings?key_ring_id=key-ring-id" \ --request "POST" \ --header "authorization: Bearer token"
Weitere Informationen finden Sie in der KeyRing.create
API-Dokumentation.
Schlüssel erstellen
Führen Sie die folgenden Schritte aus, um einen symmetrischen Verschlüsselungsschlüssel für den angegebenen Schlüsselbund und den angegebenen Standort zu erstellen.
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Klicken Sie auf den Namen des Schlüsselbunds, für den Sie einen Schlüssel erstellen.
Klicken Sie auf Schlüssel erstellen.
Wählen Sie unter Welchen Schlüsseltyp möchten Sie erstellen? die Option Generierter Schlüssel aus.
Geben Sie im Feld Schlüsselname einen Namen für den Schlüssel ein.
Klicken Sie auf das Drop-down-Menü Schutzstufe und wählen Sie Software aus.
Klicken Sie auf das Drop-down-Menü Zweck und wählen Sie Symmetrisches Ver-/Entschlüsseln aus.
Übernehmen Sie die Standardwerte für Rotationszeitraum und Beginnt am.
Klicken Sie auf Erstellen.
gcloud CLI
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 auf diese Version durchführen.
gcloud kms keys create key \ --keyring key-ring \ --location location \ --purpose "encryption"
Geben Sie für key den Namen für den Schlüssel an. Ersetzen Sie key-ring durch den Namen des Schlüsselbunds, in dem sich der Schlüssel befinden wird. Ersetzen Sie location durch den Cloud KMS-Speicherort für den Schlüsselbund.
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-id/keyRings/key-ring-id/cryptoKeys?crypto_key_id=crypto-key-id" \ --request "POST" \ --header "authorization: Bearer token" \ --header "content-type: application/json" \ --data '{"purpose": "purpose"}'
Ersetzen Sie purpose durch den Zweck des Schlüssels. Informationen zu zulässigen Zweckwerten finden Sie unter CryptoKeyPurpose.
Schlüsselrotationszeitraum und Startzeit festlegen
Ein Schlüssel kann mit einem festgelegten Rotationszeitraum erstellt werden, was dem Zeitraum zwischen der automatischen Generierung neuer Schlüsselversionen entspricht. Ein Schlüssel kann auch mit einer angegebenen nächsten Rotationszeit erstellt werden.
Console
Wenn Sie mit der Google Cloud Console einen Schlüssel erstellen, 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:
Klicken Sie auf das Feld Rotationszeitraum und wählen Sie einen Wert für den Rotationszeitraum aus.
Klicken Sie im Feld Ab dem auf das Datum und wählen Sie dann ein Datum für die nächste Drehung aus.
gcloud CLI
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 auf diese Version durchführen.
gcloud kms keys create KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --purpose "encryption" \ --rotation-period ROTATION_PERIOD \ --next-rotation-time NEXT_ROTATION_TIME
Dabei gilt:
KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthält.LOCATION
: Der Cloud KMS-Speicherort des Schlüsselbunds.ROTATION_PERIOD
: das Intervall, in dem der Schlüssel rotiert werden soll, z. B.30d
, um den Schlüssel alle 30 Tage zu rotieren. Der Rotationszeitraum muss mindestens 1 Tag und darf maximal 100 Jahre betragen. 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 sieben Tage nach Ausführung des Befehls zu planen. Weitere Informationen finden Sie unter CryptoKey.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_NAME/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"}'
Dabei gilt:
PURPOSE
ist der Zweck des Schlüssels.ROTATION_PERIOD
: das Intervall, in dem der Schlüssel rotiert werden soll, z. B.30d
, um den Schlüssel alle 30 Tage zu rotieren. Der Rotationszeitraum muss mindestens 1 Tag und darf maximal 100 Jahre betragen. 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 sieben Tage nach Ausführung des Befehls zu planen. Weitere Informationen finden Sie unter CryptoKey.nextRotationTime.
Dauer des Status Zum Löschen vorgemerkt festlegen
Standardmäßig verbringen Schlüsselversionen in Cloud KMS 24 Stunden im Status Zum Löschen vorgemerkt (auch als vorläufig gelöscht bezeichnet), bevor sie gelöscht werden. Diese Dauer, für die sie in diesem Status bleiben, kann konfiguriert werden. Es gibt jedoch folgende Einschränkungen:
- Die Dauer kann nur während der Schlüsselerstellung konfiguriert werden.
- Nach der Festlegung kann die Dauer des Schlüssels nicht mehr geändert werden.
- Die Dauer gilt für alle zukünftigen Versionen des Schlüssels.
- Die Mindestdauer beträgt für alle Schlüssel 24 Stunden, außer für Schlüssel, die nur importiert werden und eine Mindestdauer von 0 haben.
- Die maximale Dauer beträgt 120 Tage.
- Die Standarddauer beträgt 24 Stunden.
So erstellen Sie einen Schlüssel, der eine benutzerdefinierte Dauer für den Status Zum Löschen vorgemerkt verwendet:
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Klicken Sie auf den Namen des Schlüsselbunds, für den Sie einen Schlüssel erstellen.
Klicken Sie auf Schlüssel erstellen.
Konfigurieren Sie die Einstellungen des Schlüssels für Ihre Anwendung.
Klicken Sie auf Optionale Einstellungen.
Wählen Sie unter Dauer des Löschens geplant die Anzahl der Tage aus, für die der Schlüssel zum Löschen vorgemerkt bleibt, bevor er endgültig gelöscht wird.
Klicken Sie auf Schlüssel erstellen.
gcloud CLI
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 auf diese Version durchführen.
gcloud kms keys create key \ --keyring key-ring \ --location location \ --purpose purpose \ --destroy-scheduled-duration duration
Geben Sie für key den Namen für den Schlüssel an. Ersetzen Sie key-ring durch den Namen des Schlüsselbunds, in dem sich der Schlüssel befinden wird. Ersetzen Sie location durch den Cloud KMS-Speicherort für den Schlüsselbund. Ersetzen Sie purpose durch den Zweck des Schlüssels, z. B. „Verschlüsselung“. Ersetzen Sie duration durch die Zeit, die der Schlüssel zum Löschen vorgemerkt ist, bevor er endgültig gelöscht wird.
Wenn Sie Informationen zu allen Flags und möglichen Werten erhalten möchten, führen Sie den Befehl mit dem Flag --help
aus.
Wir empfehlen die Verwendung der Standarddauer von 24 Stunden für alle Schlüssel, es sei denn, Sie haben spezielle Anwendungs- oder rechtliche Anforderungen, die einen anderen Wert erfordern.
Neue Schlüsselversionen manuell erstellen
Neben der automatischen Rotation können Sie Schlüssel manuell rotieren. Weitere Informationen finden Sie unter Schlüssel rotieren.