Transparent Data Encryption (TDE)
Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)
Transparente Datenverschlüsselung (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.
Um eine Benutzerdatenbank zu schützen, können Sie Vorkehrungen treffen wie:
- Entwerfen eines sicheren Systems
- Verschlüsseln vertraulicher Ressourcen
- Erstellen einer Firewall für die Datenbankserver
Eine böswillige Partei, die physische Medien wie Laufwerke oder Sicherungsbänder stiehlt, kann die Datenbank jedoch 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. Die DEK ist ein symmetrischer Schlüssel und wird durch ein Zertifikat gesichert, das die Datenbank des master
Servers speichert 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 zu verschlüsselnmaster
, oder msdb
model
. 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 hinweg finden Sie unter Konfigurieren von SQL Server-Datenbank-Engine zum Verschlüsseln von Verbindungen.
Verwandte Themen:
- TDE (Transparent Data Encryption) für SQL-Datenbank, SQL Managed Instance und Azure Synapse Analytics
- Erste Schritte mit Transparent Data Encryption (TDE) in Azure Synapse Analytics
- Verschieben einer TDE-geschützten Datenbank in einen anderen SQL Server
- Aktivieren von TDE in SQL Server mithilfe von EKM
- Verwenden von SQL Server-Connector mit SQL-Verschlüsselungsfunktionen
- SQL Server Security Blog on TDE with FAQ (SQL Server Blog zu Sicherheitsthemen über TDE mit FAQ)
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-Datenbank automatisch das in der master
Datenbank gespeicherte Zertifikat auf Serverebene. Um eine TDE-Datenbank auf SQL-Datenbank zu verschieben, müssen Sie die Datenbank für den Verschiebungsvorgang nicht entschlüsseln. Weitere Informationen zur Verwendung von TDE mit SQL-Datenbank finden Sie unter transparenter Datenverschlüsselung mit 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 enthaltenen 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 Data Protection-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 Elemente auf Datenbankebene (der Datenbankverschlüsselungsschlüssel und ALTER DATABASE
Teile) können benutzerkonfiguriert werden, wenn Sie TDE für SQL-Datenbank verwenden.
Aktivieren von TDE
Führen Sie folgende Schritte aus, um TDE zu verwenden:
Gilt für: SQL Server.
- Erstellen Sie einen Hautschlüssel.
- Erstellen oder beziehen Sie ein vom Hauptschlüssel geschütztes Zertifikat.
- Erstellen Sie einen Verschlüsselungsschlüssel für die Datenbank, und schützen Sie ihn mithilfe des Zertifikats.
- 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 ist, werden auch mit dem DEK verschlüsselt. Wenn Sie diese Sicherungen wiederherstellen, muss das Zertifikat, das die 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 | Erläutert die ALTER DATABASE Option, die zum Aktivieren von TDE verwendet wird |
Katalogsichten und dynamische Verwaltungssichten
In der folgenden Tabelle sind TDE-Katalogansichten und dynamische Verwaltungsansichten (DYNAMIC Management Views, DMV) aufgeführt.
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 Festlegen einer Datenbank auf den Einzelbenutzermodus.
Verwenden Sie die sys.dm_database_encryption_keys
dynamische Verwaltungsansicht, um den Status der Datenbankverschlüsselung zu ermitteln. Weitere Informationen finden Sie im Abschnitt "Katalogansichten und dynamische Verwaltungsansichten" weiter oben in diesem Artikel.
Bei TDE werden alle Dateien und Dateigruppen in einer Datenbank verschlüsselt. Wenn eine Dateigruppe in einer Datenbank markiert READ ONLY
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 höheren Versionen in die Datenbank importiert und von TDE verschlüsselt.
Tipp
Um Änderungen im TDE-Status einer Datenbank zu überwachen, verwenden Sie die SQL Server-Überwachung oder Azure SQL-Datenbank Überwachung. Für SQL Server wird TDE unter der Überwachungsaktionsgruppe DATABASE_OBJECT_CHANGE_GROUP
nachverfolgt, die Sie in SQL Server-Überwachungsaktionsgruppen 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
- Übergang einer Datenbank oder Dateigruppe in einen
READ ONLY
Zustand
Die folgenden Vorgänge sind während der CREATE DATABASE ENCRYPTION KEY
Anweisungen , ALTER DATABASE ENCRYPTION KEY
, , DROP DATABASE ENCRYPTION KEY
und ALTER DATABASE...SET ENCRYPTION
Anweisungen unzulässig:
- Löschen einer Datei aus einer Dateigruppe in einer Datenbank
- Löschen einer Datenbank
- Offlineschalten einer Datenbank
- Trennen einer Datenbank
- Übergang einer Datenbank oder Dateigruppe in einen
READ ONLY
Zustand - Verwenden eines
ALTER DATABASE
Befehls - Starten einer Datenbank- oder Datenbankdateisicherung
- Starten einer Datenbank- oder Datenbankdateiwiederherstellung
- Erstellen einer Momentaufnahme
Die folgenden Vorgänge oder Bedingungen verhindern die CREATE DATABASE ENCRYPTION KEY
, ALTER DATABASE ENCRYPTION KEY
, , DROP DATABASE ENCRYPTION KEY
und ALTER DATABASE...SET ENCRYPTION
Anweisungen:
- 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.
Um eine DEK mit einem asymmetrischen Schlüssel zu verschlüsseln, muss der asymmetrische Schlüssel auf einem erweiterbaren Schlüsselverwaltungsanbieter vorhanden sein.
TDE-Überprüfung
Um TDE für eine Datenbank zu aktivieren, muss SQL Server eine Verschlüsselungsüberprüfung durchführen. Der Scan liest alle Seiten der Datendateien in den Pufferpool und schreib die verschlüsselten Seiten dann wieder auf den Datenträger.
Um Ihnen mehr Kontrolle über die Verschlüsselungsüberprüfung zu geben, führt SQL Server 2019 (15.x) den TDE-Scan ein, der eine Syntax zum Anhalten und Fortsetzen enthält. 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 der sys.dm_database_encryption_keys
dynamischen Verwaltungsansicht 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 der Verschlüsselungsscan angehalten wird, 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 verwaltete Instanz 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 für eine unverschlüsselte Datenbank ist ein sizierbarer Datenvorgang und die Erforderliche Zeit hängt von den Systemressourcen ab, auf denen diese Datenbank ausgeführt wird. Die sys.dm_database_encryption_keys DMV 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. Jedes Protokoll, das von vorherigen Transaktionen oder aktuellen lang ausgeführten Transaktionen generiert wird, die zwischen der TDE-Zustandsänderung interleaviert werden, wird nicht verschlüsselt.
Die Transaktionsprotokolle können mithilfe des sys.dm_db_log_info DMV überwacht werden, was auch anzeigt, ob die Protokolldatei verschlüsselt ist oder nicht die Spalte verwendet, die vlf_encryptor_thumbprint
in Azure SQL verfügbar ist, und SQL Server 2019 (15.x) und höhere Versionen. 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 im 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 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 zur Systemdatenbank finden Sie in der tempdb
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 zum Schutz der DEK verwendet wird, sichern Sie das zertifikat , das im primären Replikat erstellt wurde, und erstellen Sie dann das Zertifikat aus einer Datei in allen sekundären Replikaten, bevor Sie die DEK für das primäre Replikat erstellen.
TDE und FILESTREAM-Daten
FILESTREAM-Daten werden nicht verschlüsselt, auch wenn Sie TDE aktivieren.
TDE und Sicherungen
Zertifikate werden häufig in der transparenten Datenverschlüsselung verwendet, um die DEK zu schützen. Das Zertifikat muss in der master
Datenbank erstellt werden. Sicherungsdateien von Datenbanken, die TDE aktiviert haben, werden auch mithilfe der DEK verschlüsselt. Wenn Sie daher aus diesen Sicherungen wiederherstellen, muss das Zertifikat, das die DEK schützt, verfügbar sein. Dies bedeutet, dass Sie zusätzlich zum Sichern der Datenbank Sicherungen der Serverzertifikate Standard müssen, um Datenverluste zu verhindern. Datenverlust tritt auf, wenn das Zertifikat nicht mehr verfügbar ist.
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 die DEK mithilfe des DROP-DATENBANKVERSCHLÜSSELUNGSSCHLÜSSELs 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. Nachdem Sie die DEK entfernt haben, nehmen Sie eine Protokollsicherung, gefolgt von einer neuen vollständigen Sicherung der entschlü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 SQL Server 2014 (12.x) werden OLTP-Protokolleinträge im Arbeitsspeicher verschlüsselt, wenn Sie TDE aktivieren, dateien in der MEMORY_OPTIMIZED_DATA
Dateigruppe jedoch unverschlüsselt sind.
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 im Protokollversand oder in der Datenbank Spiegel ing verwendet wird. Zertifikate, die in einer enthaltenen 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 der folgende (Fehler 33091) wird nach der Ausführung 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
lautet NULL
, 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.
Zugehöriger Inhalt
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für