Transparente Datenverschlüsselung (Transparent Data Encryption, TDE) für AlloyDB Omni

Wählen Sie eine Dokumentationsversion aus:

Mit der transparenten Datenverschlüsselung (Transparent Data Encryption, TDE) können Sie alle ruhenden Daten in Ihren AlloyDB Omni-Clustern schützen, ohne den Anwendungscode ändern zu müssen. Wenn Sie diese Funktion aktivieren, werden Tabellen, Indexe und Write-Ahead-Logs (WAL) automatisch verschlüsselt, bevor sie auf das Laufwerk geschrieben werden. So können Sie Complianceanforderungen erfüllen und sensible Informationen schützen.

Die Verschlüsselung ist transparent, da SQL-Abfragen, DDL- und DML-Vorgänge normal funktionieren, ohne dass Anwendungsänderungen erforderlich sind. Daten werden automatisch verschlüsselt, bevor sie auf das Laufwerk geschrieben werden, und entschlüsselt, wenn sie in den Arbeitsspeicher gelesen werden.

Schlüsselhierarchie

AlloyDB Omni implementiert eine zweistufige Schlüsselhierarchie, die eine strikte Trennung der Aufgaben zwischen der Datenbank und der vom Nutzer verwalteten Sicherheitsinfrastruktur aufrechterhält.

  • Datenverschlüsselungsschlüssel (Data Encryption Keys, DEKs): werden von AlloyDB Omni generiert und sind Eigentum von AlloyDB Omni. Mit diesen Schlüsseln werden die eigentlichen Datendateien, WAL, und temporären Dateien verschlüsselt. AlloyDB Omni speichert DEKs auf dem Laufwerk, verpackt sie aber mit Ihrem Schlüsselverschlüsselungsschlüssel (Key Encryption Key, KEK).
  • Schlüsselverschlüsselungsschlüssel (Key Encryption Key, KEK): der Hauptschlüssel, den Sie in einem externen Key Management Service (KMS) verwalten. AlloyDB Omni verwendet Ihren KEK, um die DEKs zu verschlüsseln. AlloyDB Omni greift nur beim Start auf diesen Schlüssel zu, um die DEKs zu entpacken. Ihr KEK wird nie dauerhaft auf dem Datenbanklaufwerk gespeichert.
    • Der Speicherort und die Zugriffsparameter des KEK werden über Umgebungsvariablen und das --tde-kek-url Initialisierungs Flag bereitgestellt.

Funktionsweise von TDE mit AlloyDB Omni

Wenn TDE aktiviert ist, schützt AlloyDB Omni Ihre Daten mit einem mehrschichtigen Verschlüsselungsmodell, das in ein externes KMS eingebunden ist.

  • Initialisierung und Schlüsselabruf: Während der Start- oder Initialisierungsphase des Clusters stellt die AlloyDB Omni-Engine eine sichere Verbindung zu Ihrem KMS her. Sie authentifiziert sich mit einem JSON Web Token (JWT) und ruft den KEK ab.
  • Entpacken der DEKs: AlloyDB Omni verwendet Ihren KEK, um die DEKs zu entpacken, die im verpackten Zustand im lokalen Speicher gespeichert sind. Anschließend werden diese DEKs in den Arbeitsspeicher geladen.
  • Transparente Datenvorgänge:
    • Auf das Laufwerk schreiben: Wenn die Datenbank Datenblöcke, WAL-Einträge oder temporäre Dateien auf das physische Laufwerk schreibt, werden die Daten automatisch mit AES-256-Algorithmen verschlüsselt, bevor sie auf das physische Laufwerk geschrieben werden.
    • Vom Laufwerk lesen: Wenn die Datenbank Daten in den Arbeitsspeicher lesen muss, werden die Blöcke automatisch mit den DEKs entschlüsselt, die im Arbeitsspeicher gespeichert sind.
  • Sicherheitsgrenzen: Ihr KEK wird nie auf dem lokalen Datenbanklaufwerk gespeichert. So bleiben die Daten auch dann unlesbar, wenn physische Speichermedien kompromittiert werden, sofern kein autorisierter Zugriff auf den externen Vault besteht.

Verschlüsselungsbereich und -spezifikationen

AlloyDB Omni schützt Ihre Daten mit den branchenüblichen AES-256-Algorithmen.

  • Datendateien (Tabellen und Indexe) : AES-256-XTS
  • Write-Ahead-Logs (WAL) : AES-256-CTR
  • Temporäre Dateien:AES-256-XTS oder AES-256-CTR, je nach Art der temporären Daten
  • Schlüsselverpackung:AES-256-KWP

Sicherung und Hochverfügbarkeit

Wenn TDE aktiviert ist, übernehmen Sicherungen, die mit pgBackRest erstellt wurden, die Verschlüsselungskonfiguration des Quellclusters. So bleiben Ihre Sicherungsdaten mit demselben Sicherheitsniveau geschützt wie Ihre primäre Datenbank.

Sicherungen können nur in Clustern wiederhergestellt werden, in denen derselbe KEK verfügbar ist.

Bei HA-Einrichtungen muss die Wiederherstellungsumgebung mit denselben Vault-Umgebungsvariablen initialisiert werden. Die Vault-Umgebungsvariablen müssen auf allen beteiligten Hosts verfügbar sein.

Unterstützte KMS und Authentifizierung

AlloyDB Omni unterstützt HashiCorp Vault als externen KMS-Anbieter. AlloyDB Omni unterstützt nur die KV-V2-Secrets-Engine und die einzige unterstützte Authentifizierungsmethode ist JWT.

Kompatibilität mit PostgreSQL-Tools

Cluster mit aktivierter TDE unterstützen alle integrierten PostgreSQL-Tools, außer initdb, transparent über Umgebungsvariablen. Wenn Sie initdb verwenden, müssen Sie die KEK-URL explizit übergeben. Weitere Informationen finden Sie unter Cluster mit aktivierter TDE erstellen.

Beschränkungen

  • Sie können TDE nicht in vorhandenen Clustern aktivieren.
  • Nach der Aktivierung können Sie TDE nicht mehr deaktivieren.
  • Upgrades auf eine neue Hauptversion werden für Cluster mit aktivierter TDE nicht unterstützt.
  • Sie können verschlüsselte Sicherungen nicht auf unverschlüsselten Servern und unverschlüsselte Sicherungen nicht auf verschlüsselten Servern wiederherstellen.
  • Die DEK-Rotation wird nicht unterstützt.
  • Die KEK-Rotation wird unterstützt, solange der KEK-URL-Pfad gleich bleibt.
  • Sie können CREATE DATABASE mit der Strategie FILE_COPY nicht verwenden.
  • In Clustern mit aktivierter TDE unterstützen Barman-Sicherungen nur den Modus rsync. Die Sicherungsmethode postgres wird nicht unterstützt.

Nächste Schritte