Freigeben über


Sichern eines Datenbank-Hauptschlüssels

Gilt für: SQL Server

Dieses Thema beschreibt, wie Sie den Datenbankhauptschlüssel in SQL Server mithilfe von Transact-SQL sichern. Der Datenbank-Hauptschlüssel wird zur Verschlüsselung anderer Schlüssel und Zertifikate in einer Datenbank verwendet. Wenn dieser Schlüssel beschädigt oder gelöscht wird, können die anderen Schlüssel möglicherweise von SQL Server nicht entschlüsselt werden, und die damit verschlüsselten Daten gehen verloren. Aus diesem Grund sollten Sie den Datenbank-Hauptschlüssel sichern und diese Sicherung an einem sicheren Ort außerhalb Ihrer Geschäftsräume aufbewahren.

Voraussetzungen

Einschränkungen

  • Der Hauptschlüssel muss geöffnet und somit entschlüsselt sein, bevor er gesichert wird. Wenn er mit dem Diensthauptschlüssel verschlüsselt ist, muss der Hauptschlüssel nicht explizit geöffnet werden. Falls der Hauptschlüssel jedoch nur mit einem Kennwort verschlüsselt ist, muss er explizit geöffnet werden.

  • Es wird empfohlen, sofort nach der Erstellung eine Sicherung des Hauptschlüssels anzulegen und diese an einem sicheren Ort außerhalb Ihrer Geschäftsräume aufzubewahren.

Sicherheit

Berechtigungen

Erfordert die CONTROL-Berechtigung für die Datenbank.

Verwenden von SQL Server Management Studio mit Transact-SQL

So sichern Sie den Datenbank-Hauptschlüssel

  1. Stellen Sie in SQL Server Management Studio eine Verbindung mit der SQL Server-Instanz her, die den zu sichernden Datenbankhauptschlüssel enthält.

  2. Geben Sie ein Kennwort an, mit dem der Datenbank-Hauptschlüssel auf dem Sicherungsmedium verschlüsselt wird. Dieses Kennwort unterliegt Komplexitätsüberprüfungen.

  3. Verwenden Sie ein Wechselsicherungsmedium, auf dem eine Kopie des gesicherten Schlüssels gespeichert wird.

  4. Ermitteln Sie ein NTFS-Verzeichnis, in dem die Sicherung des Schlüssels erstellt werden soll. In diesem Verzeichnis erstellen Sie die im nächsten Schritt beschriebene Datei. Das Verzeichnis sollte durch stark einschränkende Zugriffssteuerungslisten (Access Control Lists, ACLs) geschützt sein.

  5. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.

  6. Klicken Sie in der Standardleiste auf Neue Abfrage.

  7. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen.

    -- Creates a backup of the "AdventureWorks2022" master key. Because this master key is not encrypted by the service master key, a password must be specified when it is opened.  
    USE AdventureWorks2022;   
    GO  
    OPEN MASTER KEY DECRYPTION BY PASSWORD = 'sfj5300osdVdgwdfkli7';   
    
    BACKUP MASTER KEY TO FILE = 'c:\temp\exportedmasterkey'   
        ENCRYPTION BY PASSWORD = 'sd092735kjn$&adsg';   
    GO  
    

    Hinweis

    Der Dateipfad zum Schlüssel und das Kennwort (sofern es vorhanden ist) des Schlüssels unterscheiden sich von den obigen Informationen. Stellen Sie sicher, dass beide für den Server und die Schlüsseleinrichtung spezifisch sind.

  8. Kopieren Sie die Datei auf das Sicherungsmedium, und überprüfen Sie die Kopie.

  9. Verwahren Sie die Sicherung an einem sicheren Ort außerhalb der Geschäftsräume.

Weitere Informationen

Weitere Informationen finden Sie unter OPEN MASTER KEY (Transact-SQL) und BACKUP MASTER KEY (Transact-SQL).