Auf dieser Seite wird die transparente Datenverschlüsselung (Transparent Data Encryption, TDE) in Cloud SQL for SQL Server beschrieben.
Cloud SQL for SQL Server unterstützt die Verwendung von TDE zum Verschlüsseln von Daten, die in Ihren Cloud SQL for SQL Server-Instanzen gespeichert sind. TDE verschlüsselt Daten automatisch, bevor sie in den Speicher geschrieben werden, und entschlüsselt Daten automatisch, wenn sie aus dem Speicher gelesen werden.
TDE wird in Szenarien verwendet, in denen zusätzlich zum Standardangebot von Google zur Verschlüsselung ruhender Daten und zum optionalen Angebot von Google zu vom Kunden verwalteten Verschlüsselungsschlüsseln (Customer-Managed Encryption Keys, CMEK) eine weitere Verschlüsselungsebene erforderlich ist. Insbesondere können Sie TDE verwenden, um die Anforderungen an die Einhaltung von Vorschriften wie den Payment Card Industry Data Security Standard (PCI DSS) zu erfüllen oder verschlüsselte Sicherungen zu importieren oder zu exportieren.
Funktionsweise von TDE
TDE für Cloud SQL for SQL Server bietet die Verwaltung von Verschlüsselungsschlüsseln mithilfe einer zweistufigen Schlüsselarchitektur. Ein Zertifikat, das aus dem primären Datenbankschlüssel generiert wird, wird zum Schutz der Datenverschlüsselungsschlüssel verwendet. Mit dem Schlüssel für die Datenbankverschlüsselung werden Daten in der Nutzerdatenbank verschlüsselt und entschlüsselt. Cloud SQL verwaltet sowohl den primären Datenbankschlüssel als auch das TDE-Zertifikat.
Für jede berechtigte Cloud SQL for SQL Server-Instanz wird ein eindeutiges TDE-Zertifikat bereitgestellt, das ein Jahr lang gültig ist. Cloud SQL for SQL Server rotiert dieses Zertifikat automatisch jährlich.
Sie können externe TDE-Zertifikate in die Instanz importieren, müssen diese jedoch manuell rotieren.
Wenn die Instanz Replikate hat, werden alle TDE-Zertifikate, einschließlich der von Cloud SQL verwalteten und der manuell importierten, automatisch auf alle Replikate verteilt.
Für Instanzen mit aktivierter TDE wird eine interne Datenbank mit dem Namen
gcloud_cloudsqladmin
generiert. Diese Datenbank ist für interne Cloud SQL-Prozesse reserviert, ist für Nutzer nicht zugänglich, speichert nur minimale Daten und verursacht nur geringe Speicherkosten.Cloud SQL for SQL Server verwendet das Namenspräfix
gcloud_tde_system_
, wenn ein TDE-Zertifikat bereitgestellt wird.Für alle importierten Zertifikate wird das Namenspräfix
gcloud_tde_user_
CERT_NAME_
UUID verwendet.Nachdem Sie ein Zertifikat in eine Instanz importiert oder rotiert haben, in der sowohl TDE als auch die Wiederherstellung zu einem bestimmten Zeitpunkt (Point-In-Time Recovery, PITR) aktiviert sind, wird für die Instanz eine neue Sicherung erstellt. So verringern Sie das Risiko eines Zertifikatsverlusts, wenn Sie eine verschlüsselte Datenbank zu einem Zeitpunkt wiederherstellen möchten, bevor das Zertifikat für die Instanz zugänglich war.
Beschränkungen
Nur in Cloud SQL for SQL Server-Instanzen mit den folgenden Datenbankversionen verfügbar:
- SQL Server Enterprise
- SQL Server 2019 oder höher (Standard Edition)
Wenn TDE für eine Instanz mit Replikaten verwendet wird und VPC Service Controls aktiviert sind, müssen sich die primäre Instanz und alle Replikate im selben Dienstperimeter befinden.
Weitere Informationen finden Sie unter VPC Service Controls konfigurieren und VPC Service Controls.
Sie können kein von Cloud SQL verwaltetes TDE-Zertifikat löschen.
Sie können ein TDE-Zertifikat nicht löschen, während es verwendet wird.
Sie können externe TDE-Zertifikate nicht direkt in Replikatinstanzen importieren.
Sie können bis zu zehn TDE-Zertifikate pro Instanz importieren. Wenn Sie weitere Zertifikate importieren müssen, löschen Sie alle unnötigen Zertifikate mit der gespeicherten Prozedur
msdb.dbo.gcloudsql_drop_tde_user_certificate
.