授與可用性群組權限 (Transact-SQL)

適用于:SQL Server (所有支援的版本)

授與 Always On 可用性群組的權限。

主題連結圖示Transact-SQL 語法慣例

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  

注意

若要檢視 SQL Server 2014 與更早版本的 Transact-SQL 語法,請參閱舊版文件

引數

permission
指定可以授與的可用性群組權限。 如需權限清單,請參閱這個主題稍後的「備註」一節。

ON AVAILABILITY GROUP ::availability_group_name
指定要授與其權限的可用性群組。 範圍限定詞 ( :: ) 是必要項。

TO < server_principal>
指定要授與許可權SQL Server登入。

SQL_Server_login
指定SQL Server登入的名稱。

SQL_Server_login_from_Windows_login
指定從 Windows 登入建立SQL Server登入的名稱。

SQL_Server_login_from_certificate
指定對應至憑證SQL Server登入的名稱。

SQL_Server_login_from_AsymKey
指定對應至非對稱金鑰SQL Server登入的名稱。

WITH GRANT OPTION
指出主體也有權授與指定權限給其他主體。

AS SQL_Server_login
指定執行此查詢的主體衍生許可權授與許可權的SQL Server登入。

備註

只有在目前資料庫是 master 的情況下,才能夠授與伺服器範圍的權限。

可用性群組的相關資訊會顯示在 sys.availability_groups (Transact-SQL) 目錄檢視中。 您可以在 sys.server_permissions 目錄檢視中,看到伺服器權限的資訊,並在 sys.server_principals 目錄檢視中,看到有關伺服器主體的資訊。

可用性群組是伺服器層級的安全性實體。 下表所列的是可以授與之最特定且最有限的可用性群組權限,並列出利用隱含方式來併入這些權限的較通用權限。

可用性群組權限 可用性群組權限所隱含 伺服器權限所隱含
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

如需所有 Database Engine 許可權的圖表,請參閱 Database Engine 許可權海報

權限

需要可用性群組的 CONTROL 權限或伺服器的 ALTER ANY AVAILABILITY GROUP 權限。

範例

A. 授與可用性群組的 VIEW DEFINITION 權限

下列範例會將可用性群組的許可權授 VIEW DEFINITION 與SQL Server登入 ZArifinMyAg

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

B. 授與具有 GRANT OPTION 的 TAKE OWNERSHIP 權限

下列範例會授 TAKE OWNERSHIP 與可用性群組 MyAg 的許可權,以使用 SQL Server使用者 PKomosinskiGRANT OPTION

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

C. 授與可用性群組的 CONTROL 權限

下列範例會將可用性群組的許可權授 CONTROL 與SQL Server使用者 PKomosinskiMyAg CONTROL 可完全控制可用性群組的登入,即使不是可用性群組的擁有者亦然。 若要變更擁有權,請參閱 ALTER AUTHORIZATION (Transact-SQL)

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

另請參閱

撤銷可用性群組權限 (Transact-SQL)
拒絕可用性群組權限 (Transact-SQL)
CREATE AVAILABILITY GROUP (Transact-SQL)
sys.availability_groups (Transact-SQL)
Always On可用性群組目錄檢視 (Transact-SQL) 許可權 (Database Engine)
主體 (Database Engine)