GRANT (Berechtigungen für symmetrische Schlüssel) (Transact-SQL)

Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics

Erteilt Berechtigungen für einen symmetrischen Schlüssel.

Transact-SQL-Syntaxkonventionen

Hinweis

Diese Syntax wird vom serverlosen SQL-Pool in Azure Synapse Analytics nicht unterstützt.

Syntax

GRANT permission [ ,...n ]    
    ON SYMMETRIC KEY :: symmetric_key_name   
    TO <database_principal> [ ,...n ] [ WITH GRANT OPTION ]  
        [ AS <database_principal> ]   
  
<database_principal> ::=   
        Database_user   
    | Database_role   
    | Application_role   
    | Database_user_mapped_to_Windows_User   
    | Database_user_mapped_to_Windows_Group   
    | Database_user_mapped_to_certificate   
    | Database_user_mapped_to_asymmetric_key   
    | Database_user_with_no_login   

Argumente

permission
Gibt eine Berechtigung an, die für einen symmetrischen Schlüssel erteilt werden kann. Eine Liste der Berechtigungen finden Sie im Abschnitt zu den Hinweisen weiter unten in diesem Thema.

ON SYMMETRIC KEY ::asymmetric_key_name
Gibt den symmetrischen Schlüssel an, für den die Berechtigung erteilt wird. Der Bereichsqualifizierer (::) ist erforderlich.

TO <database_principal>
Gibt den Prinzipal an, für den die Berechtigung erteilt wird.

WITH GRANT OPTION
Gibt an, dass der Prinzipal die angegebene Berechtigung auch anderen Prinzipalen erteilen kann.

AS <Datenbankprinzipal> gibt einen Prinzipal an, von dem der Prinzipal, der diese Abfrage ausführt, sein Recht zum Zuweisen der Berechtigung ableitet.

Database_user
Gibt einen Datenbankbenutzer an.

Database_role
Gibt eine Datenbankrolle an.

Application_role
Gibt eine Anwendungsrolle an.

Database_user_mapped_to_Windows_User
Gibt einen Datenbankbenutzer an, der einem Windows-Benutzer zugeordnet ist.

Database_user_mapped_to_Windows_Group
Gibt einen Datenbankbenutzer an, der einer Windows-Gruppe zugeordnet ist.

Database_user_mapped_to_certificate
Gibt einen Datenbankbenutzer an, der einem Zertifikat zugeordnet ist.

Database_user_mapped_to_asymmetric_key
Gibt einen Datenbankbenutzer an, der einem asymmetrischen Schlüssel zugeordnet ist.

Database_user_with_no_login
Gibt einen Datenbankbenutzer ohne entsprechenden Prinzipal auf Serverebene an.

Bemerkungen

Informationen zu symmetrischen Schlüsseln werden in der sys.symmetric_keys-Katalogsicht angezeigt.

Ein symmetrischer Schlüssel ist ein sicherungsfähiges Element auf Datenbankebene in der Datenbank, die das übergeordnete Element in der Berechtigungshierarchie ist. Die spezifischsten und restriktivsten Berechtigungen, die einem symmetrischen Schlüssel erteilt werden können, sind unten aufgeführt. Auch die allgemeineren Berechtigungen sind aufgeführt, die diese implizit enthalten.

Berechtigung für symmetrische Schlüssel Impliziert durch die Berechtigung für symmetrische Schlüssel Impliziert durch Datenbankberechtigung
ALTER CONTROL ALTER ANY SYMMETRIC KEY
CONTROL CONTROL CONTROL
REFERENCES CONTROL REFERENCES
TAKE OWNERSHIP CONTROL CONTROL
VIEW DEFINITION CONTROL VIEW DEFINITION

Berechtigungen

Der Berechtigende (oder der mit der AS-Option angegebene Prinzipal) benötigt entweder die Berechtigung selbst mit GRANT OPTION oder eine höhere Berechtigung, die die erteilte Berechtigung impliziert.

Falls die AS-Option verwendet wird, gelten die folgenden zusätzlichen Anforderungen.

AS granting_principal Zusätzliche Berechtigung erforderlich
Datenbankbenutzer IMPERSONATE-Berechtigung für den Benutzer, Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.
Einem Windows-Anmeldenamen zugeordneter Datenbankbenutzer IMPERSONATE-Berechtigung für den Benutzer, Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.
Einer Windows-Gruppe zugeordneter Datenbankbenutzer Mitgliedschaft in der Windows-Gruppe, Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.
Einem Zertifikat zugeordneter Datenbankbenutzer Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.
Einem asymmetrischen Schlüssel zugeordneter Datenbankbenutzer Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.
Einem Serverprinzipal zugeordneter Datenbankbenutzer IMPERSONATE-Berechtigung für den Benutzer, Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.
Datenbankrolle ALTER-Berechtigung für die Rolle, Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.
Anwendungsrolle ALTER-Berechtigung für die Rolle, Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.

Prinzipale mit CONTROL-Berechtigung für ein sicherungsfähiges Element können die Berechtigung für dieses sicherungsfähige Element erteilen.

Empfänger der CONTROL SERVER-Berechtigung, wie z. B. Mitglieder der festen Serverrolle sysadmin, können jede beliebige Berechtigung für jedes beliebige sicherungsfähige Element auf dem Server erteilen. Empfänger der CONTROL-Berechtigung in einer Datenbank, z. B. Mitglieder der festen Datenbankrolle db_owner, können jede Berechtigung für ein beliebiges sicherungsfähiges Element in der Datenbank erteilen.

Beispiele

Im folgenden Beispiel wird die ALTER-Berechtigung für den symmetrischen Schlüssel SamInventory42 dem Datenbankbenutzer HamidS erteilt.

USE AdventureWorks2022;  
GRANT ALTER ON SYMMETRIC KEY::SamInventory42 TO HamidS;  
GO  

Weitere Informationen

sys.symmetric_keys (Transact-SQL)
DENY (Berechtigungen für symmetrische Schlüssel) (Transact-SQL)
REVOKE (Berechtigungen für symmetrische Schlüssel) (Transact-SQL)
CREATE SYMMETRIC KEY (Transact-SQL)
Berechtigungen (Datenbank-Engine)
Prinzipale (Datenbank-Engine)
Verschlüsselungshierarchie