Teilen über


Transparent Data Encryption (TDE)

Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Transparent Data Encryption (TDE) verschlüsselt SQL Server-, Azure SQL-Datenbank- und Azure Synapse Analytics-Datendateien. Diese Verschlüsselung ist auch als Verschlüsselung von ruhenden Daten bekannt.

Sie können die folgenden Vorkehrungen treffen, um eine Benutzerdatenbank zu sichern:

  • Entwerfen eines sicheren Systems
  • Verschlüsseln vertraulicher Ressourcen
  • Erstellen einer Firewall für die Datenbankserver

Ein Angreifer, der physische Medien wie Datenträger oder Sicherungsbänder stiehlt, kann jedoch die Datenbank wiederherstellen oder anfügen und ihre Daten durchsuchen.

Eine Lösung dieses Problems besteht darin, die sensiblen Daten in einer Datenbank zu verschlüsseln und ein Zertifikat zum Schützen der Schlüssel zu verwenden, die die Daten verschlüsseln. Mit dieser Lösung wird verhindert, dass Personen ohne die Schlüssel die Daten verwenden können. Diese Art von Schutz müssen Sie jedoch im Voraus planen.

TDE führt die E/A-Verschlüsselung und -Entschlüsselung von Daten- und Protokolldateien in Echtzeit durch. Die Verschlüsselung nutzt einen DEK (Database Encryption Key, Datenbankverschlüsselungsschlüssel). Der Datenbankstartdatensatz speichert den Schlüssel, damit er für die Wiederherstellung verfügbar ist. Der DEK ist ein symmetrischer Schlüssel und wird durch ein Zertifikat gesichert, das in der master-Datenbank des Servers gespeichert ist, oder durch einen asymmetrischen Schlüssel, den ein EKM-Modul schützt.

TDE schützt ruhende Daten, also die Daten- und Protokolldateien. Sie entspricht den in vielen Branchen etablierten Gesetzen, Bestimmungen und Richtlinien. Dadurch können Softwareentwickler Daten mithilfe der AES- und 3DES-Verschlüsselungsalgorithmen verschlüsseln, ohne vorhandene Anwendungen ändern zu müssen.

Hinweis

TDE ist für Systemdatenbanken nicht verfügbar. Es kann nicht verwendet werden, um master, model oder msdb zu verschlüsseln. tempdb wird automatisch verschlüsselt, wenn eine Benutzerdatenbank TDE aktiviert hat, aber nicht direkt verschlüsselt werden kann.

TDE stellt keine Verschlüsselung über Kommunikationskanäle bereit. Weitere Informationen zum Verschlüsseln von Daten über Kommunikationskanäle finden Sie unter Konfigurieren Sie die SQL Server-Datenbank-Engine für die Verschlüsselung von Verbindungen.

Verwandte Themen:

Informationen zu TDE

Die Verschlüsselung der Datenbankdatei erfolgt auf Seitenebene. In einer verschlüsselten Datenbank werden die Seiten verschlüsselt, bevor sie auf den Datenträger geschrieben werden, und entschlüsselt, wenn sie in den Arbeitsspeicher gelesen werden. TDE erhöht nicht die Größe der verschlüsselten Datenbank.

Informationen, die für SQL-Datenbank gelten

Wenn Sie TDE mit Azure SQL-Datenbank verwenden, erstellt SQL Database automatisch das in der master-Datenbank gespeicherte Zertifikat auf Serverebene. Beim Verschieben einer TDE-Datenbank nach SQL-Datenbank muss die Datenbank für den Verschiebevorgang nicht entschlüsselt werden. Weitere Informationen zur Verwendung von TDE mit SQL-Datenbank finden Sie unter Transparent Data Encryption in Azure SQL-Datenbank.

Informationen, die für SQL Server gelten

Nachdem Sie eine Datenbank gesichert haben, können Sie diese mithilfe des richtigen Zertifikats wiederherstellen. Weitere Informationen zu Zertifikaten finden Sie unter SQL Server Certificates and Asymmetric Keys.

Sobald Sie TDE aktiviert haben, sollten Sie umgehend das Zertifikat und den zugehörigen privaten Schlüssel sichern. Wenn das Zertifikat nicht mehr verfügbar ist oder Sie die Datenbank auf einem anderen Server wiederherstellen oder anfügen, benötigen Sie Sicherungen des Zertifikats und des privaten Schlüssels. Andernfalls können Sie die Datenbank nicht öffnen. Zertifikate, die in einer geschlossenen Systemdatenbank gespeichert sind, sollten ebenfalls gesichert werden.

Behalten Sie das verschlüsselnde Zertifikat, selbst wenn Sie TDE für die Datenbank deaktiviert haben. Obwohl die Datenbank nicht verschlüsselt wird, werden Teile des Transaktionsprotokolls möglicherweise weiterhin geschützt. Möglicherweise benötigen Sie das Zertifikat auch für einige Vorgänge, bis Sie eine vollständige Datenbanksicherung durchgeführt haben.

Sie können ein Zertifikat, dessen Ablaufdatum überschritten wurde, weiterhin zum Verschlüsseln und Entschlüsseln von Daten mit TDE verwenden.

Verschlüsselungshierarchie

Die Windows Datenschutz-API (DPAPI) befindet sich im Stamm der Verschlüsselungsstruktur, sichert die Schlüsselhierarchie auf Computerebene und wird verwendet, um den Dienstmasterschlüssel (SMK) für die Datenbankserverinstanz zu schützen. Der SMK schützt den Datenbankmasterschlüssel (DMK), der auf Benutzerdatenbankebene gespeichert ist, und schützt Zertifikate und asymmetrische Schlüssel. Diese Schlüssel schützen wiederum symmetrische Schlüssel, die die Daten schützen. TDE verwendet eine ähnliche Hierarchie bis zum Zertifikat. Wenn Sie TDE verwenden, muss das DMK und das Zertifikat in der master-Datenbank gespeichert werden. Ein neuer Schlüssel, der nur für TDE verwendet wird und als Datenbankverschlüsselungsschlüssel (DEK) bezeichnet wird, wird erstellt und in der Benutzerdatenbank gespeichert.

Die folgende Abbildung zeigt die Architektur der TDE-Verschlüsselung. Nur die Datenbankebenenelemente (der Datenbankverschlüsselungsschlüssel und die ALTER DATABASE-Teile) können bei der Verwendung von TDE in SQL-Datenbank vom Benutzer konfiguriert werden.

Diagramm mit der transparenten Datenverschlüsselungsarchitektur.

Aktivieren von TDE

Führen Sie folgende Schritte aus, um TDE zu verwenden:

Gilt für: SQL Server.

  1. Erstellen Sie einen Hautschlüssel.
  2. Erstellen oder beziehen Sie ein vom Hauptschlüssel geschütztes Zertifikat.
  3. Erstellen Sie einen Verschlüsselungsschlüssel für die Datenbank, und schützen Sie ihn mithilfe des Zertifikats.
  4. Legen Sie die Verschlüsselung für die Datenbank fest.

Im folgenden Beispiel wird die Verschlüsselung und Entschlüsselung der AdventureWorks2022-Datenbank mithilfe eines Zertifikats namens MyServerCert veranschaulicht, das auf dem Server installiert ist.

USE master;
GO
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<UseStrongPasswordHere>';
GO
CREATE CERTIFICATE MyServerCert WITH SUBJECT = 'My DEK Certificate';
GO
USE AdventureWorks2022;
GO
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_256
ENCRYPTION BY SERVER CERTIFICATE MyServerCert;
GO
ALTER DATABASE AdventureWorks2022
SET ENCRYPTION ON;
GO

Die Verschlüsselungs- und Entschlüsselungsvorgänge werden von SQL Server in geplanten Hintergrundthreads ausgeführt. Verwenden Sie die Katalogsichten und dynamischen Verwaltungssichten der Tabelle, die im späteren Verlauf dieses Artikels gezeigt wird, um den Status dieser Vorgänge anzuzeigen.

Achtung

Sicherungsdateien für Datenbanken, für die TDE aktiviert wurde, werden ebenfalls mit dem DEK verschlüsselt. Wenn Sie diese Wiederherstellung wiederherstellen, muss das Zertifikat, das den DEK schützt, verfügbar sein. Stellen Sie daher zusätzlich zum Sichern der Datenbank sicher, dass Sie Sicherungen der Serverzertifikate anlegen. Wenn die Zertifikate nicht mehr verfügbar sind, kann es zu Datenverlust kommen.

Weitere Informationen finden Sie unter SQL Server Certificates and Asymmetric Keys.

Befehle und Funktionen

Damit die folgenden Anweisungen TDE-Zertifikate akzeptieren, verwenden Sie einen Datenbankhauptschlüssel, um sie zu verschlüsseln. Wenn Sie diese nur mit einem Kennwort verschlüsseln, lehnen die Anweisungen die Verschlüsselungen ab.

Wichtig

Wenn Sie das Zertifikatkennwort schützen, nachdem es von TDE verwendet wird, kann nach einem Neustart nicht auf die Datenbank zugegriffen werden.

Die folgende Tabelle bietet Links und Erläuterungen zu den Befehlen und Funktionen von TDE:

Befehl oder Funktion Zweck
CREATE DATABASE ENCRYPTION KEY Erstellt einen Schlüssel, der die Datenbank verschlüsselt
ALTER DATABASE ENCRYPTION KEY Ändert den Schlüssel, der die Datenbank verschlüsselt
DROP DATABASE ENCRYPTION KEY Entfernt den Schlüssel, der die Datenbank verschlüsselt
ALTER DATABASE SET-Optionen Erklärt die ALTER DATABASE-Option, mit der TDE aktiviert wird

Katalogsichten und dynamische Verwaltungssichten

In der folgenden Tabelle werden die Katalogsichten und die dynamischen Verwaltungssichten (DMV) von TDE erläutert.

Katalogsicht oder dynamische Verwaltungssicht Zweck
sys.databases Katalogsicht, die Datenbankinformationen anzeigt
sys.certificates Katalogsicht, die die Zertifikate in einer Datenbank anzeigt
sys.dm_database_encryption_keys Dynamische Verwaltungssicht, die Informationen zu den Verschlüsselungsschlüsseln einer Datenbank und dem Zustand der Verschlüsselung bereitstellt

Berechtigungen

Jede Funktion und jeder Befehl von TDE erfordert bestimmte Berechtigungen, die in den zuvor gezeigten Tabellen beschrieben wurden.

Zum Anzeigen der Metadaten, die im Zusammenhang mit TDE stehen, ist die VIEW DEFINITION-Berechtigung für ein Zertifikat erforderlich.

Überlegungen

Während eine erneute Verschlüsselungsprüfung für einen Datenbankverschlüsselungsvorgang ausgeführt wird, sind Wartungsvorgänge für die Datenbank deaktiviert. Sie können den Einzelbenutzermodus für die Datenbank verwenden, um Wartungsvorgänge durchzuführen. Weitere Informationen finden Sie unter So legen Sie den Einzelbenutzermodus für eine Datenbank fest.

Verwenden Sie die dynamische Verwaltungssicht sys.dm_database_encryption_keys, um den Zustand der Datenbankverschlüsselung zu ermitteln. Weitere Informationen finden Sie im Abschnitt Katalogsichten und dynamische Verwaltungssichten weiter oben in diesem Artikel.

Bei TDE werden alle Dateien und Dateigruppen in einer Datenbank verschlüsselt. Wenn eine Dateigruppe in einer Datenbank als READ ONLY gekennzeichnet ist, schlägt der Datenbankverschlüsselungsvorgang fehl.

Wenn Sie eine Datenbank bei der Datenbankspiegelung oder beim Protokollversand verwenden, werden beide Datenbanken verschlüsselt. Die Protokolltransaktionen werden für die Übertragung zwischen den Datenbanken verschlüsselt.

Wichtig

Volltextindizes werden verschlüsselt, wenn für eine Datenbank die Verschlüsselung festgelegt ist. Solche Indizes, die in SQL Server 2005 (9.x) und früheren Versionen erstellt wurden, werden von SQL Server 2008 (10.0.x) und späteren Versionen in die Datenbank importiert und durch TDE verschlüsselt.

Tipp

Verwenden Sie SQL Server Audit oder Azure SQL-Datenbanküberwachung, um die Veränderungen im TDE-Status einer Datenbank zu überwachen. Bei SQL Server wird TDE unter der Überwachungsaktionsgruppe DATABASE_OBJECT_CHANGE_GROUP nachverfolgt, die Sie in SQL Server Audit-Aktionsgruppen und -Aktionen finden können.

Begrenzungen

Die folgende Vorgänge sind während der ersten Datenbankverschlüsselung, einer Schlüsseländerung oder der Datenbankentschlüsselung nicht erlaubt:

  • Löschen einer Datei aus einer Dateigruppe in einer Datenbank
  • Löschen einer Datenbank
  • Offlineschalten einer Datenbank
  • Trennen einer Datenbank
  • Versetzen einer Datenbank oder einer Dateigruppe in den READ ONLY-Zustand

Die folgenden Vorgänge sind während der Anweisungen CREATE DATABASE ENCRYPTION KEY, ALTER DATABASE ENCRYPTION KEY, DROP DATABASE ENCRYPTION KEY und ALTER DATABASE...SET ENCRYPTION unzulässig:

  • Löschen einer Datei aus einer Dateigruppe in einer Datenbank
  • Löschen einer Datenbank
  • Offlineschalten einer Datenbank
  • Trennen einer Datenbank
  • Versetzen einer Datenbank oder einer Dateigruppe in den READ ONLY-Zustand
  • Verwenden des ALTER DATABASE-Befehls
  • Starten einer Datenbank- oder Datenbankdateisicherung
  • Starten einer Datenbank- oder Datenbankdateiwiederherstellung
  • Erstellen einer Momentaufnahme

Die folgenden Vorgänge oder Bedingungen verhindern die Anweisungen CREATE DATABASE ENCRYPTION KEY, ALTER DATABASE ENCRYPTION KEY, DROP DATABASE ENCRYPTION KEY und ALTER DATABASE...SET ENCRYPTION:

  • Eine Datenbank ist schreibgeschützt oder enthält schreibgeschützte Dateigruppen.
  • Ein ALTER DATABASE-Befehl wird ausgeführt.
  • Eine Datensicherung wird ausgeführt.
  • Eine Datenbank ist offline geschaltet oder wird wiederhergestellt.
  • Eine Momentaufnahme wird ausgeführt.
  • Es werden Datenbankwartungstasks ausgeführt.

Wenn TDE aktiviert ist, ist die Dateiinitialisierung beim Erstellen von Datenbankdateien nicht verfügbar.

Der asymmetrische Schlüssel muss sich auf einem erweiterbaren Schlüsselverwaltungsanbieter befinden, um einen DEK mit einem asymmetrischen Schlüssel zu verschlüsseln.

TDE-Überprüfung

SQL Server muss einen Verschlüsselungsscan durchführen, damit TDE auf einer Datenbank aktiviert werden kann. Der Scan liest alle Seiten der Datendateien in den Pufferpool und schreib die verschlüsselten Seiten dann wieder auf den Datenträger.

Damit Sie über mehr Kontrolle über den Verschlüsselungsscan verfügen, wurde mit SQL Server 2019 (15.x) der TDE-Scan eingeführt, der über eine Syntax zum Anhalten und Fortsetzen verfügt. Wenn die Arbeitsauslastung des Systems sehr hoch ist oder während geschäftskritischen Zeiten, können Sie den Scan pausieren und später fortsetzen.

Verwenden Sie die folgende Syntax, um den TDE-Verschlüsselungsscan anzuhalten:

ALTER DATABASE <db_name> SET ENCRYPTION SUSPEND;

Auf ähnliche Weise können Sie den TDE-Verschlüsselungsscan mithilfe der folgenden Syntax fortsetzen:

ALTER DATABASE <db_name> SET ENCRYPTION RESUME;

Die Spalte „encryption_scan_state“ wurde zur dynamischen Verwaltungssicht sys.dm_database_encryption_keys hinzugefügt. Diese zeigt den aktuellen Zustand des Verschlüsselungsscans an. Außerdem wurde eine neue Spalte namens „encryption_scan_modify_date“ hinzugefügt, die das Datum und die Uhrzeit der letzten Änderung des Status des Verschlüsselungsscans enthält.

Wenn die SQL Server-Instanz neu gestartet wird, während ihr Verschlüsselungsscan angehalten ist, wird beim Start eine Meldung im Fehlerprotokoll protokolliert. Die Meldung gibt an, dass ein bestehender Scan angehalten wurde.

Wichtig

Das Feature zum Anhalten und Fortsetzen der TDE-Überprüfung ist derzeit in Azure SQL-Datenbank, Azure SQL Managed Instance und Azure Synapse Analytics nicht verfügbar.

TDE und Transaktionsprotokolle

TDE schützt ruhende Datendateien und Protokolldateien. Das Verschlüsseln der gesamten Datenbank nach dem Aktivieren von TDE bei einer unverschlüsselten Datenbank ist ein umfangreicher Datenvorgang, dessen Dauer von den Systemressourcen abhängt, auf denen die Datenbank läuft. Die DMV sys.dm_database_encryption_keys kann verwendet werden, um den Verschlüsselungsstatus einer Datenbank zu bestimmen.

Wenn TDE aktiviert ist, erzwingt die Datenbank-Engine die Erstellung eines neuen Transaktionsprotokolls, das vom Datenbankverschlüsselungsschlüssel verschlüsselt wird. Alle Protokolle, die von früheren Transaktionen oder laufenden, lang laufenden Transaktionen zwischen den TDE-Zustandsänderungen erstellt wurden, werden nicht verschlüsselt.

Die Transaktionsprotokolle können mithilfe des DMV sys.dm_db_log_info überwacht werden, was auch anzeigt, ob die Protokolldatei verschlüsselt ist oder nicht die vlf_encryptor_thumbprint-Spalte verwendet, die in Azure SQL, SQL Server 2019 (15.x) und höhere Versionen verfügbar ist. Um den Verschlüsselungsstatus der Protokolldatei mithilfe der encryption_state-Spalte in der sys.dm_database_encryption_keys-Ansicht zu finden, finden Sie hier eine Beispielabfrage:

USE AdventureWorks2022;
GO
/* The value 3 represents an encrypted state
   on the database and transaction logs. */
SELECT *
FROM sys.dm_database_encryption_keys
WHERE encryption_state = 3;
GO

Weitere Informationen zur SQL Server-Protokolldateiarchitektur finden Sie unter Das Transaktionsprotokoll.

Vor einer DEK-Änderung verschlüsselt die vorherige DEK alle Daten, die in das Transaktionsprotokoll geschrieben wurden.

Wenn Sie eine DEK zweimal ändern, müssen Sie eine Protokollsicherung durchführen, bevor Sie die DEK erneut ändern können.

TDE und die tempdb-Systemdatenbank

Die tempdb-Systemdatenbank wird verschlüsselt, wenn eine beliebige andere Datenbank in der SQL Server-Instanz mithilfe von TDE verschlüsselt wird. Diese Verschlüsselung kann sich auf die Leistung unverschlüsselter Datenbanken der gleichen SQL Server-Instanz auswirken. Weitere Informationen über die tempdb-Systemdatenbank finden Sie unter tempdb-Datenbank.

TDE und Replikation

Daten aus einer TDE-aktivierten Datenbank werden bei der Replikation nicht automatisch in einer verschlüsselten Form repliziert. Sie müssen TDE separat aktivieren, wenn Sie die Verteilungs- und Abonnentendatenbanken schützen möchten.

Die Momentaufnahmereplikation kann Daten in nicht verschlüsselten Zwischendateien wie BCP-Dateien speichern. Dies gilt auch für die erste Datenverteilung für Transaktionsdaten und die Mergereplikation. Während einer solchen Replikation können Sie die Verschlüsselung aktivieren, um den Kommunikationskanal zu schützen.

Weitere Informationen finden Sie unter Konfigurieren der SQL Server-Datenbank-Engine zum Verschlüsseln von Verbindungen.

TDE und Verfügbarkeitsgruppen

Sie können einer Always On-Verfügbarkeitsgruppe eine verschlüsselte Datenbank hinzufügen.

Erstellen Sie den Hauptschlüssel und Zertifikate oder einen asymmetrischen Schlüssel (EKM) auf allen sekundären Replikaten, um die Datenbanken zu verschlüsseln, die Mitglied einer Verfügbarkeitsgruppe sind, bevor Sie den Datenbankverschlüsselungsschlüssel auf dem primären Replikat erstellen.

Wenn ein Zertifikat verwendet wird, um den DEK zu schützen, sichern Sie das Zertifikat, das auf dem primären Replikat erstellt wurde, und erstellen Sie dann das Zertifikat aus einer Datei auf allen sekundären Replikaten, bevor Sie den DEK auf dem primären Replikat erstellen.

TDE und FILESTREAM-Daten

FILESTREAM-Daten werden nicht verschlüsselt, selbst wenn Sie TDE aktivieren.

TDE und Sicherungen

Zertifikate werden häufig in der Transparent Data Encryption verwendet, um die DEK zu schützen. Das Zertifikat muss in der master-Datenbank erstellt werden. Sicherungsdateien von Datenbanken, für die TDE aktiviert wurde, werden ebenfalls mithilfe des DEK für die Datenbank verschlüsselt. Darum muss bei der Wiederherstellung von diesen Sicherungen das Zertifikat, das zum Verschlüsseln des Verschlüsselungsschlüssels für die Datenbank verwendet wurde, verfügbar sein. Dies bedeutet, dass Sie zusätzlich zur Sicherung der Datenbank auch Sicherungskopien der Serverzertifikate aufbewahren müssen, um einem Datenverlust vorzubeugen. Ist das Zertifikat nicht mehr verfügbar, kann es zu einem Datenverlust kommen.

Entfernen von TDE

Mithilfe der ALTER DATABASE-Anweisung können Sie die Verschlüsselung einer Datenbank entfernen.

ALTER DATABASE <db_name> SET ENCRYPTION OFF;

Der Status der Datenbank wird mit der dynamischen Verwaltungssicht sys.dm_database_encryption_keys angezeigt.

Warten Sie, bis die Entschlüsselung abgeschlossen ist, bevor Sie den DEK mithilfe von DROP DATABASE ENCRYPTION KEY entfernen.

Wichtig

Sichern Sie Hauptschlüssel und Zertifikat, die für TDE verwendet werden, an einem sicheren Speicherort. Der Hauptschlüssel und das Zertifikat sind erforderlich, um Sicherungen wiederherzustellen, die erstellt wurden, solange die Datenbank mit TDE verschlüsselt war. Nach Entfernung des DEK erstellen Sie eine Protokollsicherung und dann eine neue vollständige Sicherung der verschlüsselten Datenbank.

TDE und die Pufferpoolerweiterung

Wenn Sie eine Datenbank mit TDE verschlüsseln, werden Dateien, die mit der Pufferpoolerweiterung zusammenhängen, nicht verschlüsselt. Verwenden Sie für diese Dateien Verschlüsselungstools wie BitLocker oder EFS auf Dateisystemebene.

TDE und In-Memory-OLTP

Sie können TDE für eine Datenbank aktivieren, die über In-Memory OLTP-Objekte verfügt. In SQL Server 2016 (13.x) und Azure SQL-Datenbank werden In-Memory-OLTP-Protokolleinträge und -daten verschlüsselt, wenn Sie TDE aktivieren. In-Memory-OLTP-Protokolldatensätze in SQL Server 2014 (12.x) werden verschlüsselt, wenn Sie TDE aktivieren, Dateien in der MEMORY_OPTIMIZED_DATA-Dateigruppe werden jedoch nicht verschlüsselt.

Richtlinien zum Verwalten von Zertifikaten, die in TDE verwendet werden

Sie müssen das Zertifikat und den Datenbankmasterschlüssel sichern, wenn die Datenbank für TDE aktiviert ist und in der Protokollversand oder Datenbankspiegelung verwendet wird. Zertifikate, die in einer geschlossenen Systemdatenbank gespeichert sind, sollten ebenfalls gesichert werden.

Das Zertifikat, das zum Schutz der DEK verwendet wird, sollte niemals aus der master-Datenbank gelöscht werden. Dies bewirkt, dass auf die verschlüsselte Datenbank nicht zugegriffen werden kann.

Eine Meldung wie die Folgende (Fehler 33091) wird nach der Ausführung von CREATE DATABASE ENCRYPTION KEY ausgelöst, wenn das im Befehl verwendete Zertifikat noch nicht gesichert wurde.

Warnung

Das zum Verschlüsseln des Verschlüsselungsschlüssels für die Datenbank verwendete Zertifikat wurde nicht gesichert. Sie sollten das Zertifikat und den privaten Schlüssel, der dem Zertifikat zugeordnet ist, sofort sichern. Sollte das Zertifikat einmal nicht mehr verfügbar sein, oder sollten Sie die Datenbank auf einem anderen Server wiederherstellen oder anfügen müssen, müssen Sie über Sicherungen sowohl des Zertifikats als auch des privaten Schlüssels verfügen, da Sie andernfalls die Datenbank nicht öffnen können.

Die folgende Abfrage kann verwendet werden, um die in TDE verwendeten Zertifikate zu identifizieren, die seit der Erstellung nicht gesichert wurden.

SELECT pvt_key_last_backup_date,
    Db_name(dek.database_id) AS encrypteddatabase,
    c.name AS Certificate_Name
FROM sys.certificates c
INNER JOIN sys.dm_database_encryption_keys dek
    ON c.thumbprint = dek.encryptor_thumbprint;

Wenn die Spalte pvt_key_last_backup_date NULL ist, wurde die Datenbank, die dieser Zeile entspricht, für TDE aktiviert, aber das Zertifikat, das zum Schutz seiner DEK verwendet wurde, nicht gesichert. Weitere Informationen zum Sichern eines Zertifikats finden Sie unter BACKUP CERTIFICATE.