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

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

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

REVOKE [ GRANT OPTION FOR ] permission [ ,...n ] } 
    ON LOGIN :: SQL_Server_login
    { 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   

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.

  • { FROM | TO } SQL_Server_login
    Gibt den SQL Server-Anmeldenamen an, dessen 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.

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

    Wichtiger HinweisWichtig

    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.

    VorsichtshinweisVorsicht

    Durch ein kaskadiertes Aufheben einer Berechtigung, die mit 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.

Hinweise

Ein SQL Server-Anmeldename ist ein sicherungsfähiges Element auf Serverebene. Die spezifischsten und restriktivsten Berechtigungen, die für einen SQL Server-Anmeldenamen aufgehoben werden können, sind unten aufgeführt. Auch die allgemeineren Berechtigungen sind aufgeführt, die diese implizit enthalten.

Berechtigung für SQL Server-Anmeldenamen

Impliziert durch die Berechtigung für SQL Server-Anmeldenamen

Impliziert durch die Serverberechtigung

CONTROL

CONTROL

CONTROL SERVER

IMPERSONATE

CONTROL

CONTROL SERVER

VIEW DEFINITION

CONTROL

VIEW ANY DEFINITION

ALTER

CONTROL

ALTER ANY LOGIN

Berechtigungen

Erfordert die CONTROL-Berechtigung für den Anmeldenamen oder die ALTER ANY LOGIN-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