GRANT (Serverberechtigungen) (Transact-SQL)
Erteilt Berechtigungen für einen Server.
Syntax
GRANT permission [ ,...n ]
TO <grantee_principal> [ ,...n ] [ WITH GRANT OPTION ]
[ AS <grantor_principal> ]
<grantee_principal> ::= SQL_Server_login
| SQL_Server_login_mapped_to_Windows_login
| SQL_Server_login_mapped_to_Windows_group
| SQL_Server_login_mapped_to_certificate
| SQL_Server_login_mapped_to_asymmetric_key
<grantor_principal> ::= SQL_Server_login
| SQL_Server_login_mapped_to_Windows_login
| SQL_Server_login_mapped_to_Windows_group
| SQL_Server_login_mapped_to_certificate
| SQL_Server_login_mapped_to_asymmetric_key
Argumente
permission
Gibt eine Berechtigung an, die für einen Server erteilt werden kann. Eine Liste der Berechtigungen finden Sie im Abschnitt zu den Hinweisen weiter unten in diesem Thema.TO <grantee_principal>
Gibt den Prinzipal an, für den die Berechtigung erteilt wird.AS <grantor_principal>
Gibt den Prinzipal an, von dem der Prinzipal, der diese Abfrage ausführt, sein Recht zum Erteilen der Berechtigung ableitet.WITH GRANT OPTION
Gibt an, dass der Prinzipal die angegebene Berechtigung auch anderen Prinzipalen erteilen kann.SQL_Server_login
Gibt einen SQL Server-Anmeldenamen an.SQL_Server_login_mapped_to_Windows_login
Gibt einen SQL Server-Anmeldenamen an, der einem Windows-Anmeldenamen zugeordnet ist.SQL_Server_login_mapped_to_Windows_group
Gibt einen SQL Server-Anmeldenamen an, der einer Windows-Gruppe zugeordnet ist.SQL_Server_login_mapped_to_certificate
Gibt einen SQL Server-Anmeldenamen an, der einem Zertifikat zugeordnet ist.SQL_Server_login_mapped_to_asymmetric_key
Gibt einen SQL Server-Anmeldenamen an, der einem asymmetrischen Schlüssel zugeordnet ist.
Hinweise
Berechtigungen im Serverbereich können nur erteilt werden, wenn master als aktuelle Datenbank verwendet wird.
Informationen zu Serverberechtigungen werden in der sys.server_permissions-Katalogsicht und Informationen zu Serverprinzipalen in der sys.server_principals-Katalogsicht angezeigt. Informationen zur Mitgliedschaft von Serverrollen werden in der sys.server_role_members-Katalogsicht angezeigt.
Ein Server stellt die höchste Ebene der Berechtigungshierarchie dar. Die spezifischsten und restriktivsten Berechtigungen, die für einen Server erteilt werden können, sind in der folgenden Tabelle aufgeführt.
Serverberechtigung |
Impliziert durch die Serverberechtigung |
---|---|
ADMINISTER BULK OPERATIONS |
CONTROL SERVER |
ALTER ANY CONNECTION |
CONTROL SERVER |
ALTER ANY CREDENTIAL |
CONTROL SERVER |
ALTER ANY DATABASE |
CONTROL SERVER |
ALTER ANY ENDPOINT |
CONTROL SERVER |
ALTER ANY EVENT NOTIFICATION |
CONTROL SERVER |
ALTER ANY LINKED SERVER |
CONTROL SERVER |
ALTER ANY LOGIN |
CONTROL SERVER |
ALTER ANY SERVER AUDIT |
CONTROL SERVER |
ALTER RESOURCES |
CONTROL SERVER |
ALTER SERVER STATE |
CONTROL SERVER |
ALTER SETTINGS |
CONTROL SERVER |
ALTER TRACE |
CONTROL SERVER |
AUTHENTICATE SERVER |
CONTROL SERVER |
CONNECT SQL |
CONTROL SERVER |
CONTROL SERVER |
CONTROL SERVER |
CREATE ANY DATABASE |
ALTER ANY DATABASE |
CREATE DDL EVENT NOTIFICATION |
ALTER ANY EVENT NOTIFICATION |
CREATE ENDPOINT |
ALTER ANY ENDPOINT |
CREATE TRACE EVENT NOTIFICATION |
ALTER ANY EVENT NOTIFICATION |
EXTERNAL ACCESS ASSEMBLY |
CONTROL SERVER |
SHUTDOWN |
CONTROL SERVER |
UNSAFE ASSEMBLY |
CONTROL SERVER |
VIEW ANY DATABASE |
VIEW ANY DEFINITION |
VIEW ANY DEFINITION |
CONTROL SERVER |
VIEW SERVER STATE |
ALTER SERVER STATE |
Berechtigungen
Der Berechtigende (oder der mit der AS-Option angegebene Prinzipal) muss entweder über die Berechtigung selbst mit GRANT OPTION oder über eine höhere Berechtigung verfügen, in der die erteilte Berechtigung impliziert ist. Mitglieder der festen Serverrolle sysadmin können beliebige Berechtigungen erteilen.
Beispiele
A. Erteilen einer Berechtigung für einen Anmeldenamen
Im folgenden Beispiel wird die CONTROL SERVER-Berechtigung für den SQL Server-Anmeldenamen TerryEminhizer erteilt.
USE master;
GRANT CONTROL SERVER TO TerryEminhizer;
GO
B. Erteilen einer Berechtigung mit GRANT-Berechtigung
Im folgenden Beispiel wird die ALTER ANY EVENT NOTIFICATION-Berechtigung für den SQL Server-Anmeldenamen JanethEsteves mit dem Recht zum Erteilen der Berechtigung für andere Anmeldenamen erteilt.
USE master;
GRANT ALTER ANY EVENT NOTIFICATION TO JanethEsteves WITH GRANT OPTION;
GO
Änderungsverlauf
Aktualisierter Inhalt |
---|
Die ALTER ANY SERVER AUDIT-Berechtigung wurde hinzugefügt. |
Siehe auch