Aufheben von Verfügbarkeitsgruppenberechtigungen mit REVOKE (Transact-SQL)

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

Hebt Berechtigungen für eine Always On-Verfügbarkeitsgruppe auf.

Transact-SQL-Syntaxkonventionen

Syntax

REVOKE [ GRANT OPTION FOR ] permission  [ ,...n ]   
    ON AVAILABILITY GROUP :: availability_group_name  
    { 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 eine Verfügbarkeitsgruppe aufgehoben werden kann. Eine Liste der Berechtigungen finden Sie im Abschnitt zu den Hinweisen weiter unten in diesem Thema.

ON AVAILABILITY GROUP ::availability_group_name
Gibt die Verfügbarkeitsgruppe an, für die die Berechtigung aufgehoben wird. Der Bereichsqualifizierer ( :: ) ist erforderlich.

{ FROM | TO } <server_principal> Gibt die SQL Server-Anmeldung an, deren Berechtigung widerrufen 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.

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.

Wichtig

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

Berechtigungen im Serverbereich können nur aufgehoben werden, wenn master als aktuelle Datenbank verwendet wird.

Informationen zu Verfügbarkeitsgruppen sind in der Katalogsicht von sys.availability_groups (Transact-SQL) sichtbar. Informationen zu Serverberechtigungen sind in der Katalogsicht sys.server_permissions sichtbar, Informationen zu Serverprinzipalen sind in der Katalogsicht sys.server_principals sichtbar.

Eine Verfügbarkeitsgruppe ist ein sicherungsfähiges Element auf Serverebene. Die spezifischsten und restriktivsten Berechtigungen, die für eine Verfügbarkeitsgruppe aufgehoben werden können, sind unten aufgeführt. Auch die allgemeineren Berechtigungen sind aufgeführt, die diese implizit enthalten.

Verfügbarkeitsgruppenberechtigung Impliziert durch die Verfügbarkeitsgruppenberechtigung Impliziert durch die Serverberechtigung
ALTER CONTROL ALTER ANY AVAILABILITY GROUP
CONNECT CONTROL CONTROL SERVER
CONTROL CONTROL CONTROL SERVER
TAKE OWNERSHIP CONTROL CONTROL SERVER
VIEW DEFINITION CONTROL VIEW ANY DEFINITION

Berechtigungen

Erfordert die CONTROL-Berechtigung für die Verfügbarkeitsgruppe oder die ALTER ANY AVAILABILITY GROUP-Berechtigung für den Server.

Beispiele

A. Aufheben der VIEW DEFINITION-Berechtigung für eine Verfügbarkeitsgruppe

Im folgenden Beispiel wird der SQL Server-Anmeldung ZArifin die VIEW DEFINITION-Berechtigung für die Verfügbarkeitsgruppe MyAg verweigert.

USE master;  
REVOKE VIEW DEFINITION ON AVAILABILITY GROUP::MyAg TO ZArifin;  
GO  

B. Aufheben der TAKE OWNERSHIP-Berechtigung mit CASCADE

Im folgenden Beispiel wird die TAKE OWNERSHIP-Berechtigung für die Verfügbarkeitsgruppe MyAg für den SQL Server-Benutzer PKomosinski und für alle Prinzipale aufgehoben, denen von PKomosinski die TAKE OWNERSHIP-Berechtigung für MyAg erteilt wurde.

USE master;  
REVOKE TAKE OWNERSHIP ON AVAILABILITY GROUP::MyAg TO PKomosinski   
    CASCADE;  
GO  

C. Aufheben einer zuvor mit der WITH GRANT OPTION-Klausel erteilten Berechtigung

Wenn eine Berechtigung mit der WITH GRANT OPTION erteilt wurde, verwenden Sie REVOKE GRANT OPTION FOR … zum Entfernen von WITH GRANT OPTION. Im folgenden Beispiel wird die Berechtigung erteilt, und dann wird der WITH GRANT-Teil der Berechtigung entfernt.

USE master;  
GRANT CONTROL ON AVAILABILITY GROUP::MyAg TO PKomosinski   
    WITH GRANT OPTION;  
GO  
REVOKE GRANT OPTION FOR CONTROL ON AVAILABILITY GROUP::MyAg TO PKomosinski  
CASCADE  
GO  

Weitere Informationen

Erteilen von Verfügbarkeitsgruppenberechtigungen mit GRANT (Transact-SQL)
Verweigern von Verfügbarkeitsgruppenberechtigungen mit DENY (Transact-SQL)
CREATE AVAILABILITY GROUP (Transact-SQL)
sys.availability_groups (Transact-SQL)
Katalogsichten für Always On-Verfügbarkeitsgruppen (Transact-SQL)
Berechtigungen (Datenbank-Engine)
Prinzipale (Datenbank-Engine)