GRANT - autorizzazioni per endpoint (Transact-SQL)

Si applica a:SQL Server

Concede le autorizzazioni per un endpoint.

Convenzioni di sintassi Transact-SQL

Sintassi

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  

Nota

Per visualizzare la sintassi Transact-SQL per SQL Server 2014 (12.x) e versioni precedenti, vedere la documentazione delle versioni precedenti.

Argomenti

permission
Specifica un'autorizzazione che può essere concessa per un endpoint. Per un elenco delle autorizzazioni, vedere la sezione Osservazioni di seguito in questo argomento.

ON ENDPOINT ::endpoint_name
Specifica l'endpoint per cui viene concessa l'autorizzazione. Il qualificatore di ambito (::) è obbligatorio.

TO <server_principal>
Specifica l'account di accesso a SQL Server per cui viene concessa l'autorizzazione.

SQL_Server_login
Specifica il nome di un account di accesso di SQL Server.

SQL_Server_login_from_Windows_login
Specifica il nome di un account di accesso di SQL Server creato da un account di accesso di Windows.

SQL_Server_login_from_certificate
Specifica il nome di un account di accesso di SQL Server con il mapping a un certificato.

SQL_Server_login_from_AsymKey
Specifica il nome di un account di accesso di SQL Server con il mapping a una chiave asimmetrica.

WITH GRANT OPTION
Indica che l'entità potrà inoltre concedere l'autorizzazione specificata ad altre entità.

AS SQL_Server_login
Specifica l'account di accesso di SQL Server dal quale l'entità che esegue la query ottiene il diritto di concedere l'autorizzazione.

Osservazioni:

È possibile concedere autorizzazioni nell'ambito del server solo se il database corrente è il database master.

Le informazioni sugli endpoint sono visibili nella vista del catalogo sys.endpoints. Le informazioni sulle autorizzazioni del server sono visibili nella vista del catalogo sys.server_permissions e le informazioni sulle entità server sono visibili nella vista del catalogo sys.server_principals.

Un endpoint è un'entità a protezione diretta a livello del server. Nella tabella seguente sono elencate le autorizzazioni più specifiche e limitate che è possibile concedere per un endpoint, insieme alle autorizzazioni più generali che le includono in modo implicito.

Autorizzazione dell'endpoint Autorizzazione dell'endpoint in cui è inclusa Autorizzazione del server in cui è inclusa
ALTER CONTROL ALTER ANY ENDPOINT
CONNECT CONTROL CONTROL SERVER
CONTROL CONTROL CONTROL SERVER
TAKE OWNERSHIP CONTROL CONTROL SERVER
VIEW DEFINITION CONTROL VIEW ANY DEFINITION

Autorizzazioni

È richiesta l'autorizzazione CONTROL per l'endpoint o l'autorizzazione ALTER ANY ENDPOINT per il server.

Esempi

R. Concessione dell'autorizzazione VIEW DEFINITION per un endpoint

Nell'esempio seguente viene concessa l'autorizzazione VIEW DEFINITION per l'endpoint Mirror7 all'account di accesso di SQL server ZArifin.

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

B. Concessione dell'autorizzazione TAKE OWNERSHIP con GRANT OPTION

Nell'esempio seguente viene concessa l'autorizzazione TAKE OWNERSHIP per l'endpoint Shipping83 all'utente di SQL server PKomosinski con GRANT OPTION.

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

Vedi anche

DENY - Autorizzazioni per endpoint (Transact-SQL)
REVOKE - Autorizzazioni per endpoint (Transact-SQL)
CREATE ENDPOINT (Transact-SQL)
Viste del catalogo degli endpoint (Transact-SQL)
sys.endpoints (Transact-SQL)
Autorizzazioni (Motore di database)
Entità (motore di database)