Kunden-verwaltete Verschlüsselungsschlüssel (CMEK)

Standardmäßig werden alle inaktiven Daten in Firestore mit der Standardverschlüsselung von Google verschlüsselt. Firestore verarbeitet und verwaltet diese Verschlüsselung für Sie, ohne dass Sie etwas tun müssen.

Wenn Sie bestimmte Compliance- oder regulatorische Anforderungen in Bezug auf die Schlüssel zum Schutz Ihrer Daten haben, können Sie vom Kunden verwaltete Verschlüsselungsschlüssel (CMEKs) für Firestore verwenden. Anstatt die Verschlüsselungsschlüssel zum Schutz Ihrer Daten von Google zu verwalten, wird Ihre Firestore-Datenbank mit einem Schlüssel geschützt, den Sie in Cloud Key Management Service (Cloud KMS) steuern und verwalten.

Auf dieser Seite wird CMEK für Firestore beschrieben. Weitere Informationen zu CMEK im Allgemeinen sowie dazu, wann und warum CMEK aktiviert werden sollte, finden Sie in der Cloud KMS-Dokumentation. Eine Anleitung zum Ausführen von CMEK-bezogenen Aufgaben mit Firestore finden Sie unter CMEK verwenden.

Features

  • Datenkontrolle: Mit einem CMEK können Sie den Zugriff auf den KMS-Schlüssel verwalten. Sie können den Schlüssel zum Verschlüsseln der inaktiven Daten in Ihrer Firestore-Datenbank rotieren, deaktivieren und löschen.
  • Leistung: CMEK wirkt sich nicht auf das Firestore-SLA aus.
  • Überprüfbarkeit: Wenn Sie Audit-Logging für Cloud KMS aktivieren, werden alle Vorgänge für den Schlüssel protokolliert und sind in Cloud Logging einsehbar.
  • Einschränkungen für Organisationsrichtlinien: Sie können Einschränkungen für CMEK-Organisationsrichtlinien verwenden, um Compliance-Anforderungen an die Verschlüsselung für Firestore-Datenbanken in Ihrer Organisation festzulegen.

Preise

Cloud KMS berechnet die Kosten für den Schlüssel und alle kryptografischen Vorgänge, die mit diesem Schlüssel ausgeführt werden. Weitere Informationen finden Sie unter Cloud KMS-Preise.

Die Vorgangskosten werden Ihnen in Rechnung gestellt, wenn Firestore den Cloud KMS-Schlüssel anfordert, einen Verschlüsselungs- oder Entschlüsselungsvorgang auszuführen. Die Verschlüsselung/Entschlüsselung ist nicht mit Ihrer Anfrage synchronisiert. Dazu wird Cloud KMS alle 5 Minuten abgefragt. Angesichts der erwarteten Anzahl von kryptografischen Vorgängen, die von Firestore generiert wird, sind die Kosten in der Regel niedrig. Die Kosten für Cloud-Audit-Logs sind zusätzliche Kosten, werden aber angesichts der erwarteten Anzahl von kryptografischen Vorgängen auch generell niedrig sein.

Für die Verwendung einer CMEK-geschützten Datenbank fallen keine zusätzlichen Firestore-Kosten an und es gelten weiterhin die Firestore-Preise.

Wenn Sie Ihren Schlüssel für eine Datenbank widerrufen, werden die Speicherkosten nach der Größe des letzten Tages berechnet, an dem der Schlüssel verfügbar war. Bei dieser Datenbankgröße fallen weiterhin Speicherkosten an, bis die Datenbank gelöscht wird oder der Schlüssel wieder verfügbar ist.

Mit CMEK geschützte Inhalte

Wenn Sie eine Firestore-CMEK-geschützte Datenbank erstellen, wird Ihr Cloud KMS-Schlüssel zum Schutz inaktiver Daten verwendet. Dazu gehören auch Daten, die auf Datenträgern oder Flash-Dateien gespeichert sind. Es gelten einige Ausnahmen. Die folgenden Datentypen werden mit der Standardverschlüsselung von Google und nicht mit dem CMEK-Schlüssel verschlüsselt:

  • Daten bei der Übertragung oder im Speicher
  • Datenbankmetadaten

Umgang mit einem nicht verfügbaren Schlüsselstatus

Ver- und Entschlüsselungsvorgänge werden nicht bei jeder Datenanfrage ausgeführt. Stattdessen fragt das Firestore-System alle 5 Minuten den Cloud Key Management Service ab, um zu prüfen, ob der Schlüssel noch verfügbar ist, und führt Ver- und Entschlüsselungsvorgänge aus, sofern der Schlüssel verfügbar ist. Wenn das System erkennt, dass der Schlüssel nicht verfügbar ist, wird bei allen nachfolgenden Aufrufen der Firestore-Datenbank, einschließlich Lese-, Schreib- und Abfragen, innerhalb von 10 Minuten ein FAILED_PRECONDITION-Fehler mit der Meldung The customer-managed encryption key required by the requested resource is not accessible zurückgegeben. Wenn für die Datenbank Richtlinien zur Gültigkeitsdauer (TTL) gelten und Ablaufzeiten überschritten werden, während der Schlüssel nicht verfügbar ist, wird die Datenlöschung per TTL verzögert, bis der Schlüssel wiederhergestellt ist. Wenn in der Datenbank lang andauernde Vorgänge ausgeführt werden, sind diese so betroffen:

  • import- oder Exportvorgänge von Daten werden angehalten und als Failed gekennzeichnet. Die fehlgeschlagenen Vorgänge werden nach der Wiederherstellung des Schlüssels nicht wiederholt.
  • Vorgänge zur Indexerstellung und Vorgänge, die neue TTL-Richtlinien aktivieren, werden nicht mehr ausgeführt. Der angehaltene Vorgang wird wiederholt, wenn der Schlüssel wiederhergestellt wird.

Schlüssel gelten immer dann als nicht verfügbar, wenn Firestore absichtlich den Zugriff auf den Schlüssel verhindert. Dazu zählen:

Wenn der Schlüssel reaktiviert wird, erkennt der Abfragevorgang, dass der Schlüssel wieder verfügbar ist. Der Zugriff wird normalerweise innerhalb weniger Minuten wieder aktiviert. In seltenen Fällen kann dies jedoch auch einige Stunden dauern. Beachten Sie, dass einige Vorgänge mit Cloud KMS-Schlüsseln wie das Deaktivieren oder Löschen eines Schlüssels bis zu 3 Stunden dauern können. Firestore erkennt Änderungen erst, nachdem sie in Cloud KMS übernommen wurden.

Zur Reaktivierung eines Schlüssels sind je nach Situation folgende Schritte erforderlich:

  • Aktivieren Sie eine deaktivierte Schlüsselversion wieder.
  • Eine gelöschte Schlüsselversion wiederherstellen Bevor eine Schlüsselversion endgültig gelöscht wird, ist zum Löschen geplant. Sie können einen Schlüssel nur während des Zeitraums wiederherstellen, in dem eine Schlüsselversion zum Löschen vorgemerkt ist. Sie können einen Schlüssel, der bereits endgültig gelöscht wurde, nicht wiederherstellen.
  • Dem Firestore-Dienst-Agent wird die Berechtigung zum Zugriff auf den Schlüssel noch einmal gewährt.

Überlegungen zu externen Schlüsseln

Wenn Sie einen Cloud EKM-Schlüssel verwenden, hat Google keine Kontrolle über die Verfügbarkeit Ihres extern verwalteten Schlüssels im Partnersystem für die externe Schlüsselverwaltung.

Wenn ein extern verwalteter Schlüssel nicht verfügbar ist, unterstützt Firestore bis zu eine Stunde lang weiterhin vollständige Datenbankvorgänge mit einer im Cache gespeicherten Version des Schlüssels.

Wenn Firestore nach einer Stunde immer noch keine Verbindung zu Cloud KMS herstellen kann, schaltet Firestore die Datenbank als Schutzmaßnahme offline. Aufrufe der Datenbank schlagen mit dem Fehler FAILED_PRECONDITION fehl, der zusätzliche Details enthält.

Weitere Informationen zur Verwendung externer Schlüssel finden Sie in der Dokumentation zu Cloud External Key Manager.

Beschränkungen

  • Das Ändern eines Schlüssels für eine CMEK-geschützte Datenbank wird nicht unterstützt. Schlüsselrotation, Aktivierung und Deaktivierung werden unterstützt.
  • Sicherungspläne und Wiederherstellungsvorgänge werden für CMEK-geschützte Datenbanken nicht unterstützt. Sie können die Wiederherstellung zu einem bestimmten Zeitpunkt für die Notfallwiederherstellung verwenden.
  • CMEK-geschützte Datenbanken unterstützen Key Visualizer nur für Entitäts- und Dokumentdaten, nicht für Indexdaten.
  • Sie können CMEK nicht für vorhandene Datenbanken aktivieren. Sie können CMEK nur für neue Datenbanken aktivieren und müssen ihn beim Erstellen der Datenbank aktivieren. Wenn Sie Daten aus einer vorhandenen nicht CMEK-geschützten Datenbank in eine CMEK-geschützte Datenbank migrieren möchten, exportieren Sie die Daten und importieren Sie sie in eine neue CMEK-geschützte Datenbank.
  • Schlüssel-Tracking wird für eine CMEK-geschützte Datenbank nicht unterstützt.
  • Während der Vorabversion unterstützt Firestore eine begrenzte Anzahl von CMEK-geschützten Datenbanken.

Nächste Schritte