GRANT – octroi d'autorisations de point de terminaison (Transact-SQL)

S’applique à :SQL Server

Permet d'accorder des autorisations sur un point de terminaison.

Conventions de la syntaxe Transact-SQL

Syntaxe

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  

Remarque

Pour afficher la syntaxe Transact-SQL pour SQL Server 2014 (12.x) et versions antérieures, consultez la Documentation sur les versions antérieures.

Arguments

permission
Spécifie une autorisation qui peut être accordée sur un point de terminaison. Pour obtenir la liste des autorisations, consultez la section Notes plus loin dans cette rubrique.

ON ENDPOINT ::endpoint_name
Spécifie le point de terminaison sur lequel l'autorisation est accordée. Le qualificateur d’étendue ( :: ) est obligatoire.

TO <server_principal>
Spécifie la connexion SQL Server pour laquelle l'autorisation doit être accordée.

SQL_Server_login
Spécifie le nom d'une connexion SQL Server.

SQL_Server_login_from_Windows_login
Spécifie le nom d'une connexion SQL Server créée à partir d'une connexion Windows.

SQL_Server_login_from_certificate
Spécifie le nom d'une connexion SQL Server mappée sur un certificat.

SQL_Server_login_from_AsymKey
Spécifie le nom d'une connexion SQL Server mappée sur une clé asymétrique.

WITH GRANT OPTION
Indique que le principal a également la possibilité d'accorder l'autorisation spécifiée à d'autres principaux.

AS SQL_Server_login
Spécifie la connexion SQL Server à partir de laquelle le principal qui exécute cette requête dérive son droit d'accorder l'autorisation.

Notes

Les autorisations dans l’étendue du serveur peuvent être accordées seulement quand la base de données active est master.

Des informations sur les points de terminaison sont consultables dans la vue de catalogue sys.endpoints. Des informations sur les autorisations de serveur sont consultables dans la vue de catalogue sys.server_permissions, et des informations sur les principaux de serveur sont consultables dans la vue de catalogue sys.server_principals.

Un point de terminaison est un élément sécurisable au niveau serveur. Les autorisations les plus spécifiques et limitées qu'il est possible d'accorder sur un point de terminaison sont répertoriées dans le tableau ci-dessous, avec les autorisations plus générales qui les incluent de manière implicite.

Autorisation de point de terminaison Déduite d'une autorisation de point de terminaison Déduite d'une autorisation de serveur
ALTER CONTROL ALTER ANY ENDPOINT
CONNECT CONTROL CONTROL SERVER
CONTROL CONTROL CONTROL SERVER
TAKE OWNERSHIP CONTROL CONTROL SERVER
VIEW DEFINITION CONTROL VIEW ANY DEFINITION

Autorisations

Requiert l'autorisation CONTROL sur le point de terminaison ou l'autorisation ALTER ANY ENDPOINT sur le serveur.

Exemples

R. Octroi d'une autorisation VIEW DEFINITION sur un point de terminaison

Dans l'exemple ci-dessous, l'autorisation VIEW DEFINITION sur le point de terminaison Mirror7 est accordée à la connexion SQL ServerZArifin.

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

B. Octroi d'une autorisation TAKE OWNERSHIP avec l'option GRANT OPTION

Dans l'exemple ci-dessous, l'autorisation TAKE OWNERSHIP sur le point de terminaison Shipping83 est accordée à l'utilisateur SQL ServerPKomosinski avec l'option GRANT OPTION.

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

Voir aussi

DENY – refus d'autorisations de point de terminaison (Transact-SQL)
REVOKE – révocation d'autorisations de point de terminaison (Transact-SQL)
CREATE ENDPOINT (Transact-SQL)
Affichages catalogue des points de terminaison (Transact-SQL)
sys.endpoints (Transact-SQL)
Autorisations (moteur de base de données)
Principaux (moteur de base de données)