ALTER ASYMMETRIC KEY (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics
Ändert die Eigenschaften eines asymmetrischen Schlüssels.
Transact-SQL-Syntaxkonventionen
Hinweis
Diese Syntax wird vom serverlosen SQL-Pool in Azure Synapse Analytics nicht unterstützt.
Syntax
ALTER ASYMMETRIC KEY Asym_Key_Name <alter_option>
<alter_option> ::=
<password_change_option>
| REMOVE PRIVATE KEY
<password_change_option> ::=
WITH PRIVATE KEY ( <password_option> [ , <password_option> ] )
<password_option> ::=
ENCRYPTION BY PASSWORD = 'strongPassword'
| DECRYPTION BY PASSWORD = 'oldPassword'
Argumente
Asym_Key_Name
Der Name des asymmetrischen Schlüssels in der Datenbank.
REMOVE PRIVATE KEY
Entfernt den privaten Schlüssel aus dem asymmetrischen Schlüssel. Der öffentliche Schlüssel wird nicht entfernt.
WITH PRIVATE KEY
Ändert den Schutz des privaten Schlüssels.
ENCRYPTION BY PASSWORD ='strongPassword'
Gibt ein neues Kennwort zum Schutz des privaten Schlüssels an. password muss den Anforderungen der Windows-Kennwortrichtlinien des Computers entsprechen, auf dem die Instanz von SQL Server ausgeführt wird. Falls diese Option ausgelassen wird, wird der private Schlüssel mit dem Datenbank-Hauptschlüssel verschlüsselt.
DECRYPTION BY PASSWORD ='oldPassword'
Gibt das alte Kennwort an, mit dem der private Schlüssel zurzeit verschlüsselt ist. Das Kennwort ist nicht erforderlich, wenn der private Schlüssel mit dem Datenbank-Hauptschlüssel verschlüsselt ist.
Hinweise
Falls kein Datenbank-Hauptschlüssel vorhanden ist, muss die ENCRYPTION BY PASSWORD-Option angegeben sein. Der Vorgang erzeugt einen Fehler, wenn kein Kennwort angegeben ist. Weitere Informationen zum Erstellen eines Datenbankmasterschlüssels finden Sie unter CREATE MASTER KEY (Transact-SQL).
Mit ALTER ASYMMETRIC KEY kann der Schutz des privaten Schlüssels durch Angeben der PRIVATE KEY-Optionen geändert werden, wie in der folgenden Tabelle veranschaulicht ist.
Ändern des Schutzes | ENCRYPTION BY PASSWORD | DECRYPTION BY PASSWORD |
---|---|---|
Altes Kennwort wird geändert zu neuem Kennwort | Erforderlich | Erforderlich |
Kennwort wird geändert zu Hauptschlüssel | Auslassen | Erforderlich |
Hauptschlüssel wird geändert zu Kennwort | Erforderlich | Auslassen |
Der Datenbank-Hauptschlüssel muss geöffnet werden, bevor er zum Schutz eines privaten Schlüssels verwendet werden kann. Weitere Informationen finden Sie unter OPEN MASTER KEY (Transact-SQL).
Zum Ändern des Besitzes eines asymmetrischen Schlüssels können Sie ALTER AUTHORIZATION verwenden.
Berechtigungen
Erfordert die CONTROL-Berechtigung für den asymmetrischen Schlüssel, wenn der private Schlüssel entfernt wird.
Beispiele
A. Ändern des Kennworts für den privaten Schlüssel
Im folgenden Beispiel wird das Kennwort geändert, das zum Schutz des privaten Schlüssels des asymmetrischen Schlüssels PacificSales09
verwendet wird. Das neue Kennwort lautet <enterStrongPasswordHere>
.
ALTER ASYMMETRIC KEY PacificSales09
WITH PRIVATE KEY (
DECRYPTION BY PASSWORD = '<oldPassword>',
ENCRYPTION BY PASSWORD = '<enterStrongPasswordHere>');
GO
B. Entfernen des privaten Schlüssels aus einem asymmetrischen Schlüssel
Im folgenden Beispiel wird der private Schlüssel aus PacificSales19
entfernt, wobei nur der öffentliche Schlüssel beibehalten wird.
ALTER ASYMMETRIC KEY PacificSales19 REMOVE PRIVATE KEY;
GO
C. Entfernen des Kennwortschutzes aus einem privaten Schlüssel
Im folgenden Beispiel wird der Kennwortschutz für einen privaten Schlüssel entfernt, und der private Schlüssel wird mit dem Datenbank-Hauptschlüssel geschützt.
OPEN MASTER KEY DECRYPTION BY PASSWORD = '<database master key password>';
ALTER ASYMMETRIC KEY PacificSales09 WITH PRIVATE KEY (
DECRYPTION BY PASSWORD = '<enterStrongPasswordHere>' );
GO
Weitere Informationen
CREATE ASYMMETRIC KEY (Transact-SQL)
DROP ASYMMETRIC KEY (Transact-SQL)
Verschlüsselungsschlüssel für SQL Server und SQL-Datenbank (Datenbank-Engine)
Verschlüsselungshierarchie
CREATE MASTER KEY (Transact-SQL)
OPEN MASTER KEY (Transact-SQL)
Erweiterbare Schlüsselverwaltung (Extensible Key Management, EKM)