Поделиться через


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
Определяет разрешения, на конечную точку, которые могут быть предоставлены. Список разрешений см. в подразделе "Примечания" далее в этом разделе.

ON ENDPOINT ::endpoint_name
Указывает конечную точку, на которую предоставляется разрешение. Квалификатор области (::) является обязательным.

TO <server_principal>
Указывает имя входа SQL Server, которому предоставляется разрешение.

SQL_Server_login
Указывает имя имени входа SQL Server.

SQL_Server_login_from_Windows_login
Указывает имя имени входа SQL Server, созданного из имени входа Windows.

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.endpoints. Сведения о серверных разрешениях отображаются в представлении каталога sys.server_permissions, а сведения о серверах-участниках — в представлении каталога sys.server_principals.

Конечная точка — это защищаемый объект на уровне сервера. Наиболее специфичные и ограниченные разрешения, которые могут быть выданы на конечную точку, перечислены в следующей таблице, вместе с общими разрешениями, неявно содержащими их.

Разрешение конечной точки Содержится в разрешении конечной точки Подразумевается в разрешении сервера
ИЗМЕНИТЬ ПРОИЗВОДИТЕЛЬНОСТИ ALTER ANY ENDPOINT
ПОДКЛЮЧЕНИЕ ПРОИЗВОДИТЕЛЬНОСТИ CONTROL SERVER
ПРОИЗВОДИТЕЛЬНОСТИ ПРОИЗВОДИТЕЛЬНОСТИ CONTROL SERVER
TAKE OWNERSHIP ПРОИЗВОДИТЕЛЬНОСТИ CONTROL SERVER
VIEW DEFINITION ПРОИЗВОДИТЕЛЬНОСТИ VIEW ANY DEFINITION

Разрешения

Требует разрешения CONTROL в конечной точке или разрешения ALTER ANY ENDPOINT на сервере.

Примеры

А. Предоставление разрешения VIEW DEFINITION на конечную точку

В следующем примере предоставляется VIEW DEFINITION разрешение на доступ к конечной точке Mirror7 для входа ZArifinв SQL Server.

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

B. Предоставление разрешения TAKE OWNERSHIP с параметром GRANT OPTION

В следующем примере предоставляется TAKE OWNERSHIP разрешение на конечную точку Shipping83 пользователю PKomosinski SQL Server.GRANT OPTION

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

См. также

Deny Endpoint Permissions (Transact-SQL)
REVOKE Endpoint Permissions (Transact-SQL)
CREATE ENDPOINT (Transact-SQL)
Представления каталога конечных точек (Transact-SQL)
sys.endpoints (Transact-SQL)
Разрешения (ядро СУБД)
Субъекты (ядро СУБД)