OPEN MASTER KEY (Transact-SQL)
Öffnet den Datenbank-Hauptschlüssel der aktuellen Datenbank.
Syntax
OPEN MASTER KEY DECRYPTION BY PASSWORD = 'password'
Argumente
- 'password'
Das Kennwort, mit dem der Datenbank-Hauptschlüssel verschlüsselt wurde.
Hinweise
Falls der Datenbank-Hauptschlüssel mit dem Diensthauptschlüssel verschlüsselt wurde, wird er bei Bedarf automatisch zum Entschlüsseln oder Verschlüsseln geöffnet. In diesem Fall ist die Verwendung der OPEN MASTER KEY-Anweisung nicht erforderlich.
Wird eine Datenbank zum ersten Mal an eine neue Instanz von SQL Server angefügt, ist noch keine Kopie des Datenbank-Hauptschlüssels (verschlüsselt vom Diensthauptschlüssel) auf dem Server gespeichert. Der Datenbank-Hauptschlüssel muss mithilfe der OPEN MASTER KEY-Anweisung entschlüsselt werden. Nachdem der Datenbank-Hauptschlüssel entschlüsselt wurde, können Sie für die Zukunft die automatische Entschlüsselung aktivieren, indem Sie die ALTER MASTER KEY-Anweisung verwenden. Auf diese Weise können Sie eine Kopie des mit dem Diensthauptschlüssel verschlüsselten Datenbank-Hauptschlüssels für den Server bereitstellen. Diese Option wird unter ALTER MASTER KEY (Transact-SQL) näher erläutert.
Sie können den Datenbank-Hauptschlüssel einer bestimmten Datenbank aus der automatischen Schlüsselverwaltung ausschließen, indem Sie die ALTER MASTER KEY-Anweisung mit der DROP ENCRYPTION BY SERVICE MASTER KEY-Option verwenden. Anschließend müssen Sie den Datenbank-Hauptschlüssel explizit mit einem Kennwort öffnen.
Falls für eine Transaktion, in der der Datenbank-Hauptschlüssel explizit geöffnet wurde, ein Rollback ausgeführt wird, bleibt der Schlüssel geöffnet.
Berechtigungen
Erfordert die CONTROL-Berechtigung in der Datenbank.
Beispiele
Im folgenden Beispiel wird der Datenbank-Hauptschlüssel der AdventureWorks2008R2-Datenbank geöffnet, der mit einem Kennwort verschlüsselt wurde.
USE AdventureWorks2008R2;
OPEN MASTER KEY DECRYPTION BY PASSWORD = '43987hkhj4325tsku7';
GO