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 sie 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 dem optionalen Angebot von Google für kundenverwaltete Verschlüsselungsschlüssel (Customer-Managed Encryption Keys, CMEK) eine weitere Verschlüsselungsebene erforderlich ist. Sie können TDE beispielsweise verwenden, um die Einhaltung regulatorischer Anforderungen wie den Payment Card Industry Data Security Standard (PCI DSS) zu erfüllen oder um 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ärschlüssel der Datenbank generiert wird, wird verwendet, um die Datenverschlüsselungsschlüssel zu schützen. Der Datenbankverschlüsselungsschlüssel führt die Verschlüsselung und Entschlüsselung von Daten in der Nutzerdatenbank durch. Cloud SQL verwaltet sowohl den Primärschlüssel der Datenbank als auch das TDE-Zertifikat.
Für jede infrage kommende 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 aber 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, bei denen TDE aktiviert ist, wird eine interne Datenbank namens
gcloud_cloudsqladmingeneriert. Diese Datenbank ist für interne Cloud SQL-Prozesse reserviert, ist für Nutzer nicht zugänglich, speichert nur minimale Daten und verursacht nur vernachlässigbare 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
gcloud_tde_user_CERT_NAME_UUID Namenspräfix verwendet.Nachdem Sie ein Zertifikat in einer Instanz importiert oder rotiert haben, in der sowohl TDE als auch die Wiederherstellung zu einem bestimmten Zeitpunkt (Point-In-Time Recovery, PITR) aktiviert sind, erstellt die Instanz eine neue Sicherung. So wird das Risiko eines Zertifikatsverlusts verringert, 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 Datenbank versionen 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 ist, 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 ein TDE-Zertifikat, das von Cloud SQL verwaltet wird, nicht 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 pro Instanz bis zu zehn TDE-Zertifikate importieren. Wenn Sie mehr importieren müssen, löschen Sie alle unnötigen Zertifikate mit der gespeicherten Prozedur
msdb.dbo.gcloudsql_drop_tde_user_certificate.