GRANT エンドポイント権限(Transact-SQL)

適用対象:SQL Server

エンドポイントに対する権限を許可します。

Transact-SQL 構文表記規則

構文

GRANT permission  [ ,...n ] ON ENDPOINT :: endpoint_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  

引数

permission
エンドポイントで許可できる権限を指定します。 権限の一覧については、後の「解説」を参照してください。

ENDPOINT ::endpoint_name
権限を許可するエンドポイントを指定します。 スコープ修飾子 ( :: ) が必要です。

<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 ログインの名前を指定します。

GRANTオプション付き
権限が許可されたプリンシパルが、この権限を他のプリンシパルにも許可できることを示します。

SQL_Server_login
このクエリを実行するプリンシパルが権限を許可する権利を取得した、元の SQL Server ログインを指定します。

解説

サーバー スコープの権限を許可できるのは、現在のデータベースが master のときだけです。

エンドポイントに関する情報は、sys.endpoints カタログ ビューで確認できます。 サーバー権限に関する情報は sys.server_permissions カタログ ビュー、サーバー プリンシパルに関する情報は sys.server_principals カタログ ビューでそれぞれ確認できます。

エンドポイントは、サーバー レベルのセキュリティ保護可能なリソースです。 次の表に、エンドポイントで許可できる権限のうち最も限定的なものを、それらを暗黙的に含む一般的な権限と共に示します。

エンドポイント権限 権限が含まれるエンドポイント権限 権限が含まれるサーバー権限
ALTER CONTROL "任意の ENDPOINT を変更"
CONNECT CONTROL 制御サーバー
CONTROL CONTROL 制御サーバー
所有権を取得する CONTROL 制御サーバー
VIEW 定義 CONTROL VIEW 任意の定義

アクセス許可

エンドポイントに対してCONTROL権限が必要か、サーバー上の任意の ENDPOINT 権限をALTERする必要があります。

A. エンドポイント VIEW DEFINITION権限の付与

次の例では、エンドポイント VIEW DEFINITION での Mirror7 権限を、SQL Server ログイン ZArifin に許可します。

USE master;  
GRANT VIEW DEFINITION ON ENDPOINT::Mirror7 TO ZArifin;  
GO  

B. GRANTオプションで所有権取得許可を付与する方法

次の例では、エンドポイント TAKE OWNERSHIP での Shipping83 権限を、SQL Server ユーザー PKomosinski に許可します。ここでは GRANT OPTION を使用します。

USE master;  
GRANT TAKE OWNERSHIP ON ENDPOINT::Shipping83 TO PKomosinski   
    WITH GRANT OPTION;  
GO  

参照

DENY エンドポイントのアクセス許可 (Transact-SQL)
REVOKE エンドポイントのアクセス許可 (Transact-SQL)
CREATE ENDPOINT (Transact-SQL)
エンドポイントのカタログ ビュー (Transact-SQL)
sys.endpoints (Transact-SQL)
権限 (データベース エンジン)
プリンシパル (データベース エンジン)