Auf dieser Seite wird beschrieben, wie vom Kunden verwaltete Verschlüsselungsschlüssel (CMEKs) mit Memorystore for Redis Weitere Informationen zur sofortigen Verwendung dieser Funktion finden Sie unter Vom Kunden verwaltete Verschlüsselungsschlüssel (CMEK) verwendet.
Ist CMEK etwas für mich?
Vom Kunden verwaltete Verschlüsselungsschlüssel sind für Organisationen mit vertraulichen oder regulierten Daten gedacht, für die eigene Verschlüsselungsschlüssel verwaltet werden müssen.
Von Google und vom Kunden verwaltete Verschlüsselung im Vergleich
Mit dem CMEK-Feature können Sie für inaktive Daten in Memorystore for Redis Ihre eigenen kryptografischen Schlüssel verwenden. Nachdem Sie vom Kunden verwaltete Verschlüsselungsschlüssel hinzugefügt haben, verwendet Memorystore bei jedem API-Aufruf Ihren Schlüssel für den Datenzugriff.
Memorystore verwendet von Google verwaltete Datenverschlüsselungsschlüssel (Data Encryption Keys, DEKs) und Schlüssel Verschlüsselungsschlüssel (KEK) zum Verschlüsseln von Memorystore for Redis Es gibt zwei Verschlüsselungsebenen:
- Der DEK verschlüsselt Daten.
- Der KEK verschlüsselt den DEK.
Die Memorystore-Instanz speichert den verschlüsselten DEK zusammen mit dem und Google verwaltet den Google-KEK. Mit vom Kunden verwaltete Verschlüsselungsschlüssel erstellen, erstellen Sie einen Schlüssel, der den Google-KEK verpackt. Mit vom Kunden verwalteten Verschlüsselungsschlüsseln können Sie den KEK erstellen, widerrufen und löschen.
Kundenseitig verwaltete Verschlüsselungsschlüssel werden über die Cloud Key Management Service API verwaltet.
Die folgenden Diagramme zeigen, wie die Verschlüsselung ruhender Daten innerhalb eines Memorystore-Instanz bei Verwendung der standardmäßigen Google-Verschlüsselung im Vergleich zu kundenverwaltete Verschlüsselungsschlüssel.
Ohne CMEK
Mit CMEK
Beim Entschlüsseln von Daten, die mit vom Kunden verwalteten Verschlüsselungsschlüsseln verpackt sind, verwendet Memorystore den KEK, um den DEK zu entschlüsseln, und den unverschlüsselten DEK, um inaktive Daten zu entschlüsseln.
Wann interagiert Memorystore mit CMEK-Schlüsseln?
Aktion | Beschreibung |
---|---|
Instanzerstellung | Während der Erstellung einer Instanz konfigurieren Sie die Instanz für die Verwendung von vom Kunden verwalteten Verschlüsselungsschlüsseln. |
Instanzaktualisierung | Memorystore prüft den CMEK-Schlüssel bei Aktualisierungen einer CMEK-fähigen Instanz. |
Welche Daten werden mit CMEK verschlüsselt?
CMEK verschlüsselt die folgenden Datentypen:
- In nichtflüchtigem Speicher gespeicherte Kundendaten.
- Metadaten im Zusammenhang mit Sicherheitsfunktionen wie AUTH und Verschlüsselung während der Übertragung.
Informationen zu Dienstkonten
Wenn Sie eine Instanz mit CMEK erstellen, müssen Sie dem Memorystore-Dienstkonto die Rolle cloudkms.cryptoKeyEncrypterDecrypter zuweisen. Das Konto muss dabei das folgende Format haben:
service-[PROJECT_NUMBER]@cloud-redis.iam.gserviceaccount.com
Wenn Sie diese Berechtigung gewähren, kann das Dienstkonto den Schlüsselzugriff von Cloud KMS anfordern.
Eine Anleitung zum Gewähren dieser Berechtigung für das Dienstkonto finden Sie unter Dem Dienstkonto Zugriff auf den Schlüssel gewähren
Informationen zu Schlüsseln
In Cloud KMS müssen Sie einen Schlüsselbund mit einem kryptografischen Schlüssel erstellen. die einen symmetrischen Verschlüsselungs-/Entschlüsselungsalgorithmus verwendet. Wenn Sie eine neue Memorystore-Instanz erstellen, wählen Sie diesen Schlüssel aus, um um die Instanz zu verschlüsseln. Sie können ein Projekt sowohl für Schlüssel als auch für Memorystore-Instanzen erstellen oder für beide jeweils ein separates Projekt erstellen.
CMEK ist an allen Memorystore-Instanzstandorten verfügbar. Die Schlüssel- und Schlüsselbundregion muss auf dieselbe Region wie die Memorystore for Redis-Instanz festgelegt sein. Ein Schlüssel für mehrere Regionen oder eine globale Region arbeiten. Eine Anfrage zum Erstellen einer Memorystore-Instanz schlägt fehl, wenn die Regionen nicht übereinstimmen.
CMEK für Memorystore ist mit Cloud External Key Manager (Cloud EKM) kompatibel.
Vom Kunden verwaltete Verschlüsselungsschlüssel haben folgendes Format:
projects/[CMEK_ENABLED_PROJECT]/locations/[REGION]/keyRings/[RING_NAME]/cryptoKeys/[KEYNAME]
Wenn Memorystore auf eine Schlüsselversion derzeit nicht zugreifen kann verwendet wird (z. B. wenn Sie die Schlüsselversion deaktivieren), wird Memorystore geschlossen die Instanz ohne unangemessene Verzögerung herunter. In der Google Cloud Console wird ein Für angehaltene Instanz wird die Kurzinfo mit einem roten Ausrufezeichen auf der Seite Instanzen Seite. Wenn der Mauszeiger auf die Kurzinfo „Kein Status“ bewegt wird angezeigt wird. Sobald der Schlüssel wieder zugänglich ist, setzt Memorystore die Instanz automatisch fort.
Wie kann ich CMEK-verschlüsselte Daten dauerhaft unzugänglich machen?
Es kann vorkommen, dass Sie mit CMEK verschlüsselte Daten dauerhaft löschen möchten. Löschen Sie dazu die Version des vom Kunden verwalteten Verschlüsselungsschlüssels. Sie können zwar den Schlüsselbund oder Schlüssel nicht löschen, aber Sie können Versionen des Schlüssels löschen.
Wie exportiere und importiere ich Daten aus einer und in eine CMEK-fähige Instanz?
Wenn Sie möchten, dass Ihre Daten während eines import oder export aus, müssen Sie einen vom Kunden verwalteten Verschlüsselungsschlüssel im Cloud Storage-Bucket, bevor Daten exportieren.
Es gibt keine besonderen Anforderungen oder Einschränkungen für das Importieren von Daten in ein neues Memorystore-Instanz gespeichert, wenn die Daten zuvor in einem CMEK-fähige Memorystore-Instanz.
Verhalten beim Löschen/Deaktivieren einer CMEK-Schlüsselversion
Wenn Sie keinen Datenzugriff auf Ihre Instanz zulassen möchten, können Sie die primäre Schlüsselversion Ihres vom Kunden verwalteten Verschlüsselungsschlüssels deaktivieren. Tun und fährt Ihre Instanz ohne unnötige Verzögerung herunter. Außerdem Memorystore fährt eine Instanz ohne unangemessene Verzögerung herunter, falls vorhanden Der vom Kunden verwaltete Verschlüsselungsschlüssel, der gerade verwendet wird, wurde deaktiviert/gelöscht. Dazu gehören auch ältere Schlüsselversionen, die noch von einer Memorystore-Instanz verwendet werden. Sie können entweder gcloud oder die Google Cloud Console verwenden, um zu prüfen, ob Ihre Instanz gesperrt ist:
Wenn Ihre Instanz in der Google Cloud Console gesperrt ist, wird auf der Seite Instanzen von Memorystore for Redis neben der Instanz eine rote Kurzinfo angezeigt. In der Kurzinfo wird „Kein Status“ angezeigt. wenn Sie mit der Maus auf .
Wenn Sie in gcloud gcloud beta redis instances describe
ausführen und in den Instanzmetadaten weder state: READY
noch state: REPAIRING
oder einen anderen Status sehen, ist Ihre Instanz gesperrt.
Eine verwendete CMEK-Schlüsselversion wieder aktivieren/wiederherstellen
Eine Instanz wird wieder angezeigt, nachdem eine verwendete CMEK-Schlüsselversion wieder aktiviert oder wiederhergestellt wurde.
Beschränkungen
Vom Kunden verwaltete Verschlüsselungsschlüssel unterliegen den folgenden Einschränkungen mit Memorystore:
- Sie können keine vom Kunden verwalteten Verschlüsselungsschlüssel auf einer vorhandenen Memorystore-Instanz aktivieren.
- Die Region für den Schlüssel, den Schlüsselbund und die Memorystore-Instanz muss identisch sein.
- Sie müssen den symmetrischen Verschlüsselungs-/Entschlüsselungsalgorithmus verwenden. für Ihren Schlüssel.
- Die Verschlüsselungs- und Entschlüsselungsraten für Cloud KMS unterliegen einem Kontingent.
CMEK-Organisationsrichtlinien
Memorystore for Redis unterstützt Einschränkungen für Organisationsrichtlinien, die für den CMEK-Schutz verwendet werden können.
Richtlinien können einschränken, für welche Cloud KMS-Schlüssel verwendet werden können CMEK-Schutz.
Wenn sich die Memorystore for Redis API in der Richtlinienliste
Deny
für Dienste unter der Einschränkungconstraints/gcp.restrictNonCmekServices
befindet, schlägt das Erstellen von Memorystore for Redis für Instanzen fehl, die nicht CMEK-geschützt sind.Wenn
constraints/gcp.restrictCmekCryptoKeyProjects
konfiguriert ist, erstellt Memorystore for Redis CMEK-geschützte Instanzen, die mit einem Schlüssel aus einem zulässigen Projekt, Ordner oder einer Organisation verschlüsselt werden.
Weitere Informationen zum Konfigurieren von CMEK-Organisationsrichtlinien finden Sie unter CMEK-Organisationsrichtlinien.