REVOKE (Berechtigungen für Serverprinzipal) (Transact-SQL)

Gilt für:SQL ServerAzure SQL Managed Instance

Hebt die Berechtigungen auf, die für einen SQL Server-Anmeldenamen erteilt oder verweigert wurden.

Transact-SQL-Syntaxkonventionen

Syntax

REVOKE [ GRANT OPTION FOR ] permission [ ,...n ] }   
    ON   
    { [ LOGIN :: SQL_Server_login ]  
      | [ SERVER ROLE :: server_role ] }   
    { FROM | TO } <server_principal> [ ,...n ]  
    [ CASCADE ]  
    [ AS SQL_Server_login ]   
  
<server_principal> ::=   
    SQL_Server_login  
    | SQL_Server_login_from_Windows_login   
    | SQL_Server_login_from_certificate   
    | SQL_Server_login_from_AsymKey     
    | server_role  

Hinweis

Informationen zum Anzeigen der Transact-SQL-Syntax für SQL Server 2014 (12.x) und früher finden Sie unter Dokumentation zu früheren Versionen.

Argumente

permission
Gibt eine Berechtigung an, die für einen SQL Server-Anmeldenamen aufgehoben werden kann. Eine Liste der Berechtigungen finden Sie im Abschnitt zu den Hinweisen weiter unten in diesem Thema.

LOGIN ::SQL_Server_login
Gibt den SQL Server-Anmeldenamen an, für den die Berechtigung aufgehoben wird. Der Bereichsqualifizierer ( :: ) ist erforderlich.

SERVER ROLE ::server_role
Gibt die Serverrolle an, für die die Berechtigung aufgehoben wird. Der Bereichsqualifizierer ( :: ) ist erforderlich.

{ FROM | TO } <server_principal> Gibt den SQL Server-Anmeldenamen oder die Serverrolle an, für den bzw. für die die Berechtigung aufgehoben wird.

SQL_Server_login
Gibt einen SQL Server-Anmeldenamen an.

SQL_Server_login_from_Windows_login
Gibt einen aus einem Windows-Anmeldenamen erstellten SQL Server-Anmeldenamen an.

SQL_Server_login_from_certificate
Gibt einen einem Zertifikat zugeordneten SQL Server-Anmeldenamen an.

SQL_Server_login_from_AsymKey
Gibt einen einem asymmetrischen Schlüssel zugeordneten SQL Server-Anmeldenamen an.

server_role
Gibt den Namen einer benutzerdefinierten Serverrolle an.

GRANT OPTION
Gibt an, dass das Recht zum Erteilen der angegebenen Berechtigung für andere Prinzipale aufgehoben wird. Die Berechtigung selbst wird nicht aufgehoben.

Wichtig

Falls der Prinzipal die angegebene Berechtigung ohne GRANT-Option besitzt, wird die Berechtigung selbst aufgehoben.

CASCADE
Gibt an, dass die aufgehobene Berechtigung auch für andere Prinzipale aufgehoben wird, denen sie von diesem Prinzipal erteilt oder verweigert wurde.

Achtung

Durch ein kaskadiertes Aufheben einer Berechtigung, die mit WITH GRANT OPTION erteilt wurde, werden sowohl GRANT als auch DENY für diese Berechtigung aufgehoben.

AS SQL_Server_login
Gibt den SQL Server-Anmeldenamen an, von dem der Prinzipal, der diese Abfrage ausführt, sein Recht zum Aufheben der Berechtigung ableitet.

Bemerkungen

SQL Server-Anmeldenamen und Serverrollen sind sicherungsfähige Elemente auf Serverebene. Die spezifischsten und restriktivsten Berechtigungen, die für einen SQL Server-Anmeldenamen oder für eine Serverrolle aufgehoben werden können, sind unten aufgeführt. Auch die allgemeineren Berechtigungen sind aufgeführt, die in diesen implizit enthalten sind.

SQL Server-Anmeldename oder Serverrollenberechtigung Impliziert durch SQL Server-Anmeldename oder Serverrollenberechtigung Impliziert durch die Serverberechtigung
CONTROL CONTROL CONTROL SERVER
IMPERSONATE CONTROL CONTROL SERVER
VIEW DEFINITION CONTROL VIEW ANY DEFINITION
ALTER CONTROL ALTER ANY LOGIN

ALTER ANY SERVER ROLE

Berechtigungen

Erfordert bei Anmeldenamen die CONTROL-Berechtigung bei der Anmeldung oder die ALTER ANY LOGIN-Berechtigung für den Server.

Erfordert bei Serverrollen die CONTROL-Berechtigung für die Serverrolle oder die ALTER ANY SERVER ROLE-Berechtigung für den Server.

Beispiele

A. Aufheben der IMPERSONATE-Berechtigung für einen Anmeldenamen

Im folgenden Beispiel wird die IMPERSONATE-Berechtigung für den SQL Server-Anmeldenamen WanidaBenshoof für einen SQL Server-Anmeldenamen aufgehoben, der aus dem Windows-Benutzer AdvWorks\YoonM erstellt wurde.

USE master;  
REVOKE IMPERSONATE ON LOGIN::WanidaBenshoof FROM [AdvWorks\YoonM];  
GO  

B. Aufheben der VIEW DEFINITION-Berechtigung mit CASCADE OPTION

Im folgenden Beispiel wird die VIEW DEFINITION-Berechtigung für den SQL Server-Anmeldenamen EricKurjan für den SQL Server-Anmeldenamen RMeyyappan aufgehoben. Mit der CASCADE-Option wird angegeben, dass die VIEW DEFINITION-Berechtigung für EricKurjan ebenfalls für die Prinzipale aufgehoben wird, denen diese Berechtigung von RMeyyappan erteilt wurde.

USE master;  
REVOKE VIEW DEFINITION ON LOGIN::EricKurjan FROM RMeyyappan   
    CASCADE;  
GO   

C. Aufheben der VIEW DEFINITION-Berechtigung für eine Serverrolle

Im folgenden Beispiel wird VIEW DEFINITION für die Serverrolle Sales der Serverrolle Auditors aufgehoben.

USE master;  
REVOKE VIEW DEFINITION ON SERVER ROLE::Sales TO Auditors ;  
GO   

Weitere Informationen

sys.server_principals (Transact-SQL)
sys.server_permissions (Transact-SQL)
GRANT (Berechtigungen für Serverprinzipal) (Transact-SQL)
DENY (Berechtigungen für Serverprinzipal) (Transact-SQL)
CREATE LOGIN (Transact-SQL)
Prinzipale (Datenbank-Engine)
Berechtigungen (Datenbank-Engine)
Sicherheitsfunktionen (Transact-SQL)
Gespeicherte Sicherheitsprozeduren (Transact-SQL)