Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
Dieser Artikel beschreibt, wie man einen Datenbank-Hauptschlüssel in SQL Server mit Transact-SQL sichert. Der Hauptschlüssel der Datenbank verschlüsselt andere Schlüssel und Zertifikate innerhalb einer Datenbank. Wenn es gelöscht oder beschädigt ist, kann SQL Server diese Schlüssel möglicherweise nicht entschlüsseln, und die damit verschlüsselten Daten gehen effektiv verloren. Aus diesem Grund sichern Sie den Datenbank-Hauptschlüssel und speichern Sie das Backup an einem sicheren externen Ort.
Limitations
Sie müssen den Datenbank-Hauptschlüssel öffnen und entschlüsseln, bevor Sie ihn sichern. Wenn der Service-Masterschlüssel den Datenbank-Masterschlüssel verschlüsselt, musst du den Datenbank-Masterschlüssel nicht explizit öffnen. Wenn jedoch ein Passwort die einzige Verschlüsselungsmethode für den Datenbank-Hauptschlüssel ist, müssen Sie ihn ausdrücklich öffnen.
Sichern Sie den Datenbank-Hauptschlüssel, sobald Sie ihn erstellen, und speichern Sie das Backup an einem sicheren, externen Ort.
Berechtigungen
Erfordert die CONTROL-Berechtigung für die Datenbank.
Sichern Sie den Datenbank-Masterschlüssel
Die Codebeispiele in diesem Artikel verwenden die AdventureWorks2025- oder AdventureWorksDW2025 Beispieldatenbank, die Sie von der Microsoft SQL Server Samples and Community Projects Homepage herunterladen können.
Verbinden Sie sich mit der SQL Server-Instanz, die den Datenbank-Hauptschlüssel enthält, den Sie sichern möchten. Sie können eine Verbindung mit einer Sql Server-Instanz herstellen, indem Sie ein vertrautes SQL Server-Clienttool verwenden, z. B. sqlcmd, SQL Server Management Studio (SSMS) oder die MSSQL-Erweiterung für Visual Studio Code.
Wählen Sie ein eindeutiges Passwort für die Verschlüsselung des Datenbank-Hauptschlüssels auf dem Backup-Medium. Ihr Kennwort sollte der standardmäßigen Kennwortrichtlinie von SQL Server folgen. Standardmäßig muss das Kennwort mindestens acht Zeichen lang sein und Zeichen aus drei der folgenden vier Sätze enthalten: Großbuchstaben, Kleinbuchstaben, Basis-10 Ziffern und Symbole. Kennwörter können bis zu 128 Zeichen lang sein. Verwenden Sie möglichst lange und komplexe Kennwörter.
Besorge dir ein herausnehmbares Backup-Medium, um eine Kopie des gesicherten Schlüssels zu speichern.
Identifizieren Sie ein NTFS-Verzeichnis, in dem Sie das Backup des Schlüssels erstellen. Dieses Verzeichnis ist der Ort, an dem du die Datei im nächsten Schritt erstellst. Schützen Sie das Verzeichnis mit hochrestriktiven Zugriffskontrolllisten (ACLs).
Überprüfen und führen Sie das folgende Transact-SQL-Skript aus.
In diesem Beispiel:
Der Service-Masterschlüssel verschlüsselt den Datenbank-Masterschlüssel nicht, daher musst du beim Öffnen ein Passwort angeben.
Du sicherst den Datenbank-Hauptschlüssel von
AdventureWorks2025inC:\Backups\Keys\AdventureWorks2025_master_key. Ändern Sie diese Einstellungen so, dass sie Ihrer Umgebung entsprechen.
Vorsicht
Du brauchst das Passwort, um ein Datenbank-Backup wiederherzustellen. Stellen Sie sicher, dass Sie dieses Passwort sicher und geschützt speichern.
USE AdventureWorks2025; GO OPEN MASTER KEY DECRYPTION BY PASSWORD = '<dmk-password>'; BACKUP MASTER KEY TO FILE = 'C:\Backups\Keys\AdventureWorks2025_master_key' ENCRYPTION BY PASSWORD = '<password>'; GOKopiere die gesicherte Datei auf das Backup-Medium und verifiziere die Kopie.
Verwahren Sie die Sicherung an einem sicheren Ort außerhalb der Geschäftsräume.