Vom Kunden verwaltete Verschlüsselungsschlüssel

Auf dieser Seite werden vom Kunden verwaltete Verschlüsselungsschlüssel und ihre Verwendung in Cloud Storage beschrieben. Wie Sie diese Funktion nutzen können, erfahren Sie unter Vom Kunden verwaltete Verschlüsselungsschlüssel verwenden. Weitere Verschlüsselungsoptionen finden Sie unter Datenverschlüsselungsoptionen.

Überblick

Zusätzlich zu von Google verwalteten Verschlüsselungsschlüsseln können Sie vom Cloud Key Management Service generierte Schlüssel verwenden. Diese Schlüssel werden als vom Kunden verwaltete Verschlüsselungsschlüssel bezeichnet. Wenn Sie einen vom Kunden verwalteten Verschlüsselungsschlüssel verwenden, werden Ihre Verschlüsselungsschlüssel in Cloud KMS gespeichert. Das Projekt, das Ihre Verschlüsselungsschlüssel enthält, kann dann unabhängig von dem Projekt sein, das Ihre Buckets enthält, wodurch eine bessere Aufgabentrennung ermöglicht wird.

Wann wird der Schlüssel verwendet?

Wenn Sie einen vom Kunden verwalteten Verschlüsselungsschlüssel auf ein Objekt anwenden, verwendet Cloud Storage den Schlüssel, um Folgendes zu verschlüsseln:

  • Die Daten des Objekts
  • Die CRC32C-Prüfsumme des Objekts
  • Den MD5-Hash des Objekts

Cloud Storage verwendet standardmäßige serverseitige Schlüssel zum Verschlüsseln der verbleibenden Metadaten für das Objekt, einschließlich des Objektnamens. Wenn Sie ausreichende Berechtigungen haben, können Sie also beispielsweise die meisten Metadaten lesen sowie Objekte auflisten und löschen, auch nachdem Sie den zugehörigen vom Kunden verwalteten Verschlüsselungsschlüssel deaktiviert oder gelöscht haben.

Dienstkonten

Die Ver- und Entschlüsselung mit vom Kunden verwalteten Verschlüsselungsschlüsseln erfolgt mithilfe von Dienstkonten. Nachdem Sie Ihrem Cloud Storage-Dienstkonto Zugriff auf einen Verschlüsselungsschlüssel gewährt haben, verschlüsselt dieses Dienstkonto:

Wenn Sie sowohl einen Standardschlüssel für Ihren Bucket als auch einen spezifischen Schlüssel für die Anfrage festgelegt haben, verwendet Cloud Storage den spezifischen Schlüssel zum Verschlüsseln des Objekts, wenn ein Objekt in Cloud Storage hinzugefügt oder neu geschrieben wird.

Wenn Sender ein Objekt lesen möchten, das mit einem vom Kunden verwalteten Verschlüsselungsschlüssel verschlüsselt ist, können sie wie gewohnt auf das Objekt zugreifen. Während einer solchen Anfrage entschlüsselt das Dienstkonto das angeforderte Objekt automatisch, solange:

  • Das Dienstkonto weiterhin über die Berechtigung verfügt, mit dem Schlüssel zu entschlüsseln
  • Sie den Schlüssel nicht deaktiviert oder zerstört haben

Wenn eine dieser Bedingungen nicht erfüllt ist, entschlüsselt das Dienstkonto die Daten nicht und die Anfrage schlägt fehl.

Wichtige Ressourcen

Eine Cloud KMS-Schlüsselressource hat folgendes Format:

projects/[PROJECT_STORING_KEYS]/locations/[LOCATION]/keyRings/[KEY_RING_NAME]/cryptoKeys/[KEY_NAME]

Dabei gilt:

  • [PROJECT_STORING_KEYS] ist die ID des Projekts, das mit dem Schlüssel verknüpft ist. Beispiel: my-pet-project
  • [LOCATION] ist der Speicherort des Schlüssels. Beispiel: US-EAST1
  • [KEY_RING_NAME] ist der Name des Schlüsselbunds. Beispiel: my-key-ring
  • [KEY_NAME] ist der Name des Schlüssels. Beispiel: my-key

Beschränkungen

Vom Kunden verwaltete Verschlüsselungsschlüssel unterliegen diesen Beschränkungen:

  • Cloud SQL-Exporte in Cloud Storage und Dataflow unterstützen derzeit keine Objekte, die mit vom Kunden verwalteten Verschlüsselungsschlüsseln verschlüsselt werden.

  • Sie können die Methode "Copy Object" der JSON API nur verwenden, wenn das Zielobjekt und das Quellobjekt denselben vom Kunden verwalteten Verschlüsselungsschlüssel nutzen. Im Allgemeinen sollten Sie die Methode "Rewrite Object" verwenden.

  • Sie können die Methode "Compose Object" der JSON API nicht verwenden, wenn mindestens eines der Quellobjekte mit einem vom Kunden verwalteten Verschlüsselungsschlüssel verschlüsselt ist.

  • Eine Aktualisierung der Metadaten des Objekts führt nicht dazu, dass Sie ein Objekt mit einem vom Kunden verwalteten Verschlüsselungsschlüssel verschlüsseln können. Fügen Sie den Schlüssel stattdessen hinzu, während Sie das Objekt neu schreiben.

  • Sie müssen den Cloud KMS-Schlüssel am selben Standort wie die Daten erstellen, die Sie verschlüsseln möchten. Beispiel: Wenn sich Ihr Bucket in US-EAST1 befindet, müssen alle Cloud KMS-Schlüssel, die Objekte in diesem Bucket verschlüsseln, ebenfalls in US-EAST1 erstellt werden. Informationen zu verfügbaren Cloud KMS-Standorten finden Sie unter Cloud KMS-Standorte.

  • Sie können einen vom Kunden verwalteten Verschlüsselungsschlüssel nicht als Teil einer Übertragung des Storage Transfer Service angeben. Solche Schlüssel für Quellobjekte werden nicht auf die übertragenen Objekte angewendet. Legen Sie stattdessen vor der Übertragung den vom Kunden verwalteten Schlüssel als Standardschlüssel für Ihren Bucket fest.

Bezug zu vom Kunden bereitgestellten Verschlüsselungsschlüssel

Neben der Verschlüsselung, die vom Kunden verwaltet wird, bietet Cloud Storage zur Steuerung Ihrer Datenverschlüsselung auch vom Kunden bereitgestellte Verschlüsselungsschlüssel. Sie können verschiedene Objekte in einem einzelnen Bucket mit unterschiedlichen Verschlüsselungsmethoden verschlüsseln, beachten Sie aber Folgendes:

  • Ein einzelnes Objekt kann immer nur mit einer dieser Methoden verschlüsselt werden.

  • Wenn der Standardschlüssel für Ihren Bucket ein vom Kunden verwalteter Schlüssel ist und Sie in einer Anfrage einen vom Kunden bereitgestellten Schlüssel angeben, verwendet Cloud Storage den vom Kunden bereitgestellten Schlüssel zum Verschlüsseln des Objekts.

  • Sie können als Standardschlüssel für Ihren Bucket einen vom Kunden verwalteten Schlüssel festlegen, aber keinen vom Kunden bereitgestellten Schlüssel.

Weitere Informationen