Teilen über


Verweigern von Verfügbarkeitsgruppenberechtigungen mit DENY (Transact-SQL)

Gilt für: SQL Server

Verweigert Berechtigungen für eine Always On-Verfügbarkeitsgruppe in SQL Server.

Transact-SQL-Syntaxkonventionen

Syntax

DENY permission  [ ,...n ] ON AVAILABILITY GROUP :: availability_group_name  
        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 verweigert 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, der die Berechtigung verweigert wird. Der Bereichsqualifizierer ( :: ) ist erforderlich.

TO <Dienstprinzipal>
Gibt den SQL Server-Anmeldenamen an, für den die Berechtigung verweigert 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.

CASCADE
Gibt an, dass die verweigerte Berechtigung auch anderen Prinzipalen verweigert wird, denen diese Berechtigung von diesem Prinzipal erteilt wurde.

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

Bemerkungen

Berechtigungen im Serverbereich können nur verweigert 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 verweigert 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. Verweigern 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;  
DENY VIEW DEFINITION ON AVAILABILITY GROUP::MyAg TO ZArifin;  
GO  

B. Verweigern der TAKE OWNERSHIP-Berechtigung mit der CASCADE-Option

Im folgenden Beispiel wird dem SQL Server-Benutzer PKomosinski die TAKE OWNERSHIP-Berechtigung für die Verfügbarkeitsgruppe MyAg mit der CASCADE-Option verweigert.

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

Weitere Informationen

Aufheben von Verfügbarkeitsgruppenberechtigungen mit REVOKE (Transact-SQL)
Erteilen von Verfügbarkeitsgruppenberechtigungen mit GRANT (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)