Freigeben über


CREATE MASTER KEY (Transact-SQL)

Erstellt einen Datenbank-Hauptschlüssel.

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'password'

Argumente

  • PASSWORD ='password'
    Das zum Verschlüsseln des Datenbank-Hauptschlüssels verwendete Kennwort. password muss den Anforderungen der Windows-Kennwortrichtlinien des Computers entsprechen, auf dem die Instanz von SQL Server ausgeführt wird.

Hinweise

Der Datenbank-Hauptschlüssel ist ein symmetrischer Schlüssel, der zum Schützen von privaten Schlüsseln der in der Datenbank vorhandenen Zertifikate und asymmetrischen Schlüssel verwendet wird. Beim Erstellen wird der Hauptschlüssel mithilfe des AES_256-Algorithmus und eines vom Benutzer angegebenen Kennworts verschlüsselt. Die automatische Entschlüsselung für den Hauptschlüssel kann aktiviert werden, indem eine Kopie des Schlüssels mit dem Diensthauptschlüssel verschlüsselt und sowohl in der Datenbank als auch in master gespeichert wird. In der Regel wird die in master gespeicherte Kopie im Hintergrund aktualisiert, sobald der Hauptschlüssel geändert wird. Dieses Standardverhalten kann mithilfe der DROP ENCRYPTION BY SERVICE MASTER KEY-Option von ALTER MASTER KEY geändert werden. Ein Hauptschlüssel, der nicht mit dem Diensthauptschlüssel verschlüsselt ist, muss mithilfe der OPEN MASTER KEY-Anweisung und eines Kennworts geöffnet werden.

In der is_master_key_encrypted_by_server-Spalte der sys.databases-Katalogsicht in master wird angezeigt, ob der Datenbank-Hauptschlüssel mit dem Diensthauptschlüssel verschlüsselt ist.

Informationen zum Datenbank-Hauptschlüssel werden in der sys.symmetric_keys-Katalogsicht angezeigt.

Wichtiger HinweisWichtig

Es wird empfohlen, dass Sie mithilfe von BACKUP MASTER KEY eine Sicherung des Hauptschlüssels erstellen und an einem sicheren Ort außerhalb Ihrer Geschäftsräume aufbewahren.

Der Diensthauptschlüssel und die Datenbank-Hauptschlüssel werden mit dem AES-256-Algorithmus geschützt.

Berechtigungen

Erfordert die CONTROL-Berechtigung für die Datenbank.

Beispiele

Im folgenden Beispiel wird ein Datenbank-Hauptschlüssel für die AdventureWorks2012-Datenbank erstellt. Der Schlüssel wird mit dem Kennwort 23987hxJ#KL95234nl0zBe verschlüsselt.

USE AdventureWorks2012;
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '23987hxJ#KL95234nl0zBe';
GO

Siehe auch

Verweis

sys.symmetric_keys (Transact-SQL)

sys.databases (Transact-SQL)

OPEN MASTER KEY (Transact-SQL)

ALTER MASTER KEY (Transact-SQL)

DROP MASTER KEY (Transact-SQL)

CLOSE MASTER KEY (Transact-SQL)

Konzepte

Verschlüsselungshierarchie