Vom Kunden verwaltete Verschlüsselungsschlüssel (Customer Managed Encryption Keys, CMEK) verwenden

Auf dieser Seite finden Sie eine Anleitung zum Erstellen einer Memorystore for Redis-Instanz, die vom Kunden verwaltete Verschlüsselungsschlüssel verwendet. Außerdem finden Sie dort Anleitungen für Verwalten von Instanzen, die CMEK verwenden. Weitere Informationen zu „Vom Kunden verwaltet“ Verschlüsselungsschlüssel für Memorystore finden Sie unter Vom Kunden verwaltete Verschlüsselungsschlüssel.

Hinweis

  1. Sie benötigen für Ihr Nutzerkonto die Rolle „Redis-Administrator“.

    Zur IAM-Seite

Workflow zum Erstellen einer Instanz mit CMEK

  1. Erstellen Sie einen Schlüsselbund und Schlüssel erstellen an dem Ort, an dem sich die Memorystore-Instanz befinden soll.

  2. Kopieren oder notieren Sie die Schlüssel-ID (KMS_KEY_ID), den Speicherort des Schlüssels und die ID (KMS_KEYRING_ID) für den Schlüsselbund. Sie benötigen diese Informationen, wenn Sie dem Dienstkonto Zugriff auf den Schlüssel gewähren.

  3. Gewähren Sie dem Memorystore-Dienstkonto Zugriff auf den Schlüssel.

  4. Rufen Sie ein Projekt auf und erstellen Sie eine Memorystore for Redis-Instanz mit aktiviertem CMEK. sich in derselben Region wie der Schlüsselbund und der Schlüssel befinden.

Ihre Memorystore for Redis-Instanz ist jetzt mit CMEK aktiviert.

Schlüssel und Schlüsselbund erstellen

Folgen Sie der Anleitung zum Erstellen eines Schlüsselbunds. und erstellen Sie einen Schlüssel. Beide müssen sich im in derselben Region wie Ihre Redis-Instanz. Der Schlüssel kann aus einem anderen Projekt stammen, solange er sich in derselben Region befindet. Außerdem muss der Schlüssel den Algorithmus für die symmetrische Verschlüsselung verwenden.

Dienstkonto Zugriff auf den Schlüssel gewähren

Zum Erstellen einer Redis-Instanz, die zuerst einen CMEK verwendet, müssen Sie einen bestimmten Memorystore-Dienstkontozugriff auf den Schlüssel. Gewähren Sie Zugriff auf das Memorystore-Dienstkonto im folgenden Format:

service-[PROJECT-NUMBER]@cloud-redis.iam.gserviceaccount.com

Console

Wenn Sie die Console verwenden, gewähren Sie dem Dienstkonto im Rahmen der Schritte zum Erstellen einer Redis-Instanz mit CMEK Zugriff auf den Schlüssel.

gcloud

Führen Sie den folgenden Befehl aus, um dem Dienstkonto Zugriff auf den Schlüssel zu gewähren Ersetzen Sie VARIABLES durch die entsprechenden Werte:

gcloud kms keys add-iam-policy-binding [KMS_KEY_ID] \
--location=[REGION_ID] \
--keyring=[KMS_KEYRING_ID] \
--member=serviceAccount:service-[PROJECT-NUMBER]@cloud-redis.iam.gserviceaccount.com \
--role=roles/cloudkms.cryptoKeyEncrypterDecrypter

Memorystore for Redis-Instanz mit CMEK erstellen

So erstellen Sie eine Instanz mit vom Kunden verwalteten Verschlüsselungsschlüsseln:

Console

  1. Sie benötigen einen Schlüsselbund und einen Schlüssel in derselben Region, in der Sie die Memorystore-Instanz erstellen möchten.

  2. Folgen Sie der Anleitung unter Redis-Instanz erstellen. bis Sie den Schritt zum Aktivieren eines vom Kunden verwalteten Verschlüsselungsschlüssels erreichen, kehren Sie dann zu dieser Anleitung zurück.

  3. Wählen Sie Vom Kunden verwalteten Verschlüsselungsschlüssel (CMEK) verwenden aus.

  4. Wählen Sie den Schlüssel im Drop-down-Menü aus.

  5. Wenn dem Memorystore-Dienstkonto die Berechtigung Berechtigungen es benötigt, wird ein Textfeld mit folgendem Text angezeigt:

    The service-[PROJECT-NUMBER]@cloud-redis.iam.gserviceaccount.com service account does not have the "cloudkms.cryptoKeyEncrypterDecrypter" role. Verify the service account has permission to encrypt/decrypt with the selected key.

    • Klicken Sie auf die Schaltfläche Erteilen, um dem Memorystore-Dienstkonto.
  6. Wählen Sie die gewünschten Konfigurationen für Ihre Instanz aus und klicken Sie auf die Schaltfläche Erstellen, um die CMEK-kompatible Memorystore for Redis-Instanz zu erstellen.

gcloud

Geben Sie zum Erstellen einer Instanz mit vom Kunden verwalteten Verschlüsselungsschlüsseln den folgenden Befehl ein. Ersetzen Sie dabei VARIABLES durch die entsprechenden Werte:

gcloud beta redis instances create [INSTANCE_ID] --size=[SIZE] \
--region=[REGION_ID] \
--customer-managed-key=projects/[PROJECT_NAME]/locations/[REGION_ID]/keyRings/[KEYRING_NAME]/cryptoKeys/[KEY_NAME]

Wichtige Informationen für eine CMEK-fähige Instanz aufrufen

Folgen Sie dieser Anleitung, um zu prüfen, ob CMEK für Ihre Instanz aktiviert ist, und den aktiven Schlüssel aufzurufen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite mit Memorystore for Redis-Instanzen auf.

    Memorystore for Redis

  2. Rufen Sie die Seite Instanzdetails für Ihre Instanz auf. Klicken Sie dazu auf Instanz-ID.

  3. Klicken Sie auf die Registerkarte Sicherheit.

  4. Der Abschnitt Verschlüsselung mit einem vom Kunden verwalteten Schlüssel enthält einen Link zum aktiven Schlüssel und den Schlüsselreferenzpfad. Wenn dieser Bereich nicht angezeigt wird, CMEK ist für die Instanz nicht aktiviert.

gcloud

Um zu prüfen, ob CMEK aktiviert ist, und um die Schlüsselreferenz zu sehen, rufen Sie die customerManagedKey durch Ausführen des folgenden Befehls:

gcloud beta redis instances describe INSTANCE_ID --project=PROJECT --region=REGION

Schlüsselversionen deaktivieren und reaktivieren

Informationen darüber, was passiert, wenn Sie Weitere Informationen zum erneuten Aktivieren einer Schlüsselversion finden Sie unter Verhalten beim Löschen/Deaktivieren einer CMEK-Schlüsselversion.

Eine Anleitung zum Deaktivieren und Reaktivieren von Schlüsselversionen finden Sie unter Schlüsselversionen aktivieren und deaktivieren.

Eine Anleitung zum Deaktivieren und erneuten Aktivieren von Schlüsselversionen finden Sie unter Schlüsselversionen löschen und wiederherstellen.

Nächste Schritte