Erteilen von Verfügbarkeitsgruppenberechtigungen mit GRANT (Transact-SQL)

Gilt für:SQL Server

Erteilt Berechtigungen für eine Always On-Verfügbarkeitsgruppe.

Transact-SQL-Syntaxkonventionen

Syntax

GRANT permission  [ ,...n ] ON AVAILABILITY GROUP :: availability_group_name  
        TO < server_principal >  [ ,...n ]  
    [ WITH GRANT OPTION ]  
    [ 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  

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 eine Verfügbarkeitsgruppe erteilt 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 erteilt wird. Der Bereichsqualifizierer ( :: ) ist erforderlich.

TO <Dienstprinzipal>
Gibt den SQL Server-Anmeldenamen an, dem die Berechtigung erteilt 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.

WITH GRANT OPTION
Gibt an, dass der Prinzipal die angegebene Berechtigung auch anderen Prinzipalen erteilen kann.

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

Bemerkungen

Berechtigungen im Serverbereich können nur erteilt 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 erteilt 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

Ein Diagramm sämtlicher Datenbank-Engine-Berechtigungen finden Sie im Poster der Datenbank-Engine-Berechtigungen.

Berechtigungen

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

Beispiele

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

Im folgenden Beispiel wird dem SQL Server-Anmeldenamen VIEW DEFINITION die MyAg-Berechtigung für die Verfügbarkeitsgruppe ZArifin erteilt.

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

B. Gewähren der TAKE OWNERSHIP-Berechtigung mit der GRANT OPTION

Im folgenden Beispiel wird dem SQL Server-Benutzer TAKE OWNERSHIP die MyAg-Berechtigung für die Verfügbarkeitsgruppe PKomosinski mit GRANT OPTION erteilt.

USE master;  
GRANT TAKE OWNERSHIP ON AVAILABILITY GROUP::MyAg TO PKomosinski   
    WITH GRANT OPTION;  
GO  

C. Erteilen der CONTROL-Berechtigung für eine Verfügbarkeitsgruppe

Im folgenden Beispiel wird dem SQL Server-Benutzer CONTROL die MyAg-Berechtigung für die Verfügbarkeitsgruppe PKomosinski erteilt. CONTROL ermöglicht dem Anmeldenamen die umfassende Kontrolle der Verfügbarkeitsgruppe, auch wenn er nicht der Besitzer der Verfügbarkeitsgruppe ist. Informationen zum Ändern des Besitzers finden Sie unter ALTER AUTHORIZATION (Transact-SQL).

USE master;  
GRANT CONTROL ON AVAILABILITY GROUP::MyAg TO PKomosinski;  
GO  

Weitere Informationen

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