Wenn Sie kundenverwaltete Verschlüsselungsschlüssel (Customer-Managed Encryption Keys, CMEK) verwenden, haben Sie die Kontrolle über Ihre Schlüssel. So haben Sie die Kontrolle über Schutzlevel, Speicherort, Rotationszeitplan, Nutzungs- und Zugriffsberechtigungen sowie über kryptografische Grenzen. Statt es Google zu überlassen, die symmetrischen Schlüsselverschlüsselungsschlüssel (Key Encryption Keys, KEKs) zum Schutz Ihrer Daten zu besitzen und zu verwalten, können Sie diese auch über Cloud Key Management Service (KMS) steuern und verwalten.
Hinweis
Workflow zum Erstellen einer Instanz, die CMEK verwendet
Erstellen Sie einen Schlüsselbund und einen Schlüssel am gewünschten Speicherort der Memorystore for Valkey-Instanz.
Kopieren oder notieren Sie sich den Schlüsselnamen (
KEY_NAME), den Speicherort des Schlüssels und den Namen des Schlüsselbunds (KEY_RING). Sie benötigen diese Informationen, wenn Sie dem Dienstkonto Zugriff auf den Schlüssel gewähren.Gewähren Sie dem Memorystore for Valkey-Dienstkonto Zugriff auf den Schlüssel.
Rufen Sie ein Projekt auf und erstellen Sie eine Memorystore for Valkey-Instanz mit aktiviertem CMEK in derselben Region wie den Schlüsselbund und den Schlüssel.
Ihre Memorystore for Valkey-Instanz ist jetzt mit CMEK aktiviert.
Schlüsselbund und Schlüssel erstellen
Erstellen Sie einen Schlüsselbund und einen Schlüssel. Beide müssen sich in derselben Region wie Ihre Memorystore for Valkey-Instanz befinden. Der Schlüssel kann aus einem anderen Projekt stammen, solange er sich in derselben Region befindet. Außerdem muss der Schlüssel den symmetrischen Verschlüsselungsalgorithmus verwenden.
Nachdem Sie den Schlüsselbund und den Schlüssel erstellt haben, kopieren oder notieren Sie sich KEY_NAME, den Speicherort des Schlüssels und KEY_RING. Sie benötigen diese Informationen, wenn Sie dem Dienstkonto Zugriff auf den Schlüssel gewähren.
Memorystore for Valkey-Dienstkonto Zugriff auf den Schlüssel gewähren
Bevor Sie eine Memorystore for Valkey-Instanz erstellen können, die CMEK verwendet, müssen Sie einem bestimmten Memorystore for Valkey-Dienstkonto Zugriff auf den Schlüssel gewähren.
Sie können dem Dienstkonto mit der gcloud CLI Zugriff auf den Schlüssel gewähren. Um dem Dienstkonto Zugriff zu gewähren, verwenden Sie das folgende Format:
service-PROJECT_NUMBER@gcp-sa-memorystore.iam.gserviceaccount.com
gcloud
Verwenden Sie den gcloud kms keys add-iam-policy-binding
Befehl, um dem Dienstkonto Zugriff auf den Schlüssel zu gewähren.
gcloud kms keys add-iam-policy-binding \ projects/PROJECT_ID/locations/REGION_ID/keyRings/KEY_RING/cryptoKeys/KEY_NAME \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-memorystore.iam.gserviceaccount.com \ --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
Ersetzen Sie die folgenden Werte:
- PROJECT_ID: die ID oder Nummer des Projekts, das den Schlüssel bund enthält
- REGION_ID: die Region, in der sich der Schlüsselbund befindet
- KEY_RING: der Name des Schlüsselbunds, der den Schlüssel enthält
- KEY_NAME: der Name des Schlüssels, für den Sie dem Dienstkonto Zugriff gewähren
- PROJECT_NUMBER: die ID oder Nummer des Projekts, das das Dienstkonto enthält
Memorystore for Valkey-Instanz erstellen, die CMEK verwendet
Sie können eine Instanz, die CMEK verwendet, mit der gcloud CLI erstellen.
gcloud
Verwenden Sie den gcloud memorystore instances create Befehl, um eine Instanz zu erstellen, die CMEK verwendet.
gcloud memorystore instances create INSTANCE_ID \
--project=PROJECT_NAME \
--location=REGION_ID \
--endpoints='[{"connections": [{"pscAutoConnection": {"network": "projects/PROJECT_NAME/global/networks/NETWORK_ID", "projectId": "PROJECT_NAME"}}]}]' \
--kms-key=projects/PROJECT_NAME/locations/REGION_ID/keyRings/KEY_RING/cryptoKeys/KEY_NAME \
--shard-count=SHARD_NUMBER \
--persistence-config-mode=PERSISTENCE_CONFIG_MODE
Ersetzen Sie die folgenden Werte:
- INSTANCE_ID: die ID der Instanz, die Sie erstellen.
- PROJECT_NAME: der Name des Projekts, in dem Sie die Instanz erstellen möchten.
- REGION_ID: die ID der Region, in der sich die Instanz befinden soll.
- NETWORK_ID: die ID des Netzwerks, das Sie zum Erstellen der Instanz verwenden möchten.
- KEY_RING: der Name des Schlüsselbunds, der den Schlüssel enthält.
- KEY_NAME: der Name des Schlüssels.
- SHARD_NUMBER: die Anzahl der Shards, die Sie für die Instanz verwenden möchten.
- PERSISTENCE_CONFIG_MODE: der Persistenzmodus für die Instanz.
Sie können diesen Modus auf einen der folgenden Werte festlegen:
aof: Sie aktivieren die AOF-basierte Persistenz (Append-Only File) für die Instanz.disabled: Sie deaktivieren die Persistenz für die Instanz.rdb: Sie aktivieren die RDB-basierte Persistenz (Redis Database) für die Instanz.
Wichtige Informationen für eine CMEK-fähige Instanz aufrufen
Sie können Informationen zu Ihrer CMEK-fähigen Instanz mit der gcloud CLI aufrufen. Dazu gehört, ob CMEK für Ihre Instanz aktiviert ist und welcher Schlüssel aktiv ist.
gcloud
Verwenden Sie den
gcloud memorystore instances describe
Befehl, um zu prüfen, ob CMEK aktiviert ist, und die Schlüsselreferenz aufzurufen. Sehen Sie sich dazu die Felder encryptionInfo und kmsKey an.
gcloud memorystore instances describe INSTANCE_ID \ --project=PROJECT_NAME \ --location=REGION_ID
Ersetzen Sie die folgenden Werte:
- INSTANCE_ID: die ID der Instanz, zu der Sie Informationen aufrufen möchten
- PROJECT_NAME: der Name des Projekts, das die Instanz enthält
- REGION_ID: die ID der Region, in der sich die Instanz befindet
Schlüsselversionen verwalten
Informationen dazu, was passiert, wenn Sie eine Schlüsselversion deaktivieren, löschen, rotieren, aktivieren, und wiederherstellen, finden Sie unter Verhalten einer CMEK-Schlüsselversion.
Eine Anleitung zum Deaktivieren und Reaktivieren von Schlüsselversionen finden Sie unter Schlüsselversionen aktivieren und deaktivieren.
Eine Anleitung zum Löschen und Wiederherstellen von Schlüsselversionen finden Sie unter Schlüsselversionen löschen und wiederherstellen.
Nächste Schritte
- Weitere Informationen zu Sicherungen.
- Weitere Informationen zur Persistenz.