DENY – refus d'autorisations de point de terminaison (Transact-SQL)

Permet de refuser des autorisations sur un point de terminaison.

Icône Lien de rubrique Conventions de la syntaxe Transact-SQL

Syntaxe

DENY permission  [ ,...n ] ON ENDPOINT :: endpoint_name
    TO < server_principal >  [ ,...n ]
    [ CASCADE ]
    [ 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

Arguments

  • permission
    Spécifie une autorisation qui peut être refusé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 doit être refusée. Le qualificateur d'étendue (
    ::
    ) est requis.

  • TO <principal_de_serveur>
    Spécifie la connexion SQL Server pour laquelle l'autorisation doit être refusé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.

  • CASCADE
    Indique que l'autorisation à refuser est également refusée pour les autres principaux auxquels elle a été accordée par ce principal.

  • 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 de refuser l'autorisation.

Notes

Les autorisations dans l'étendue du serveur peuvent être refusées seulement lorsque la base de données en cours est master.

Des informations sur les points de terminaison sont consultables dans l'affichage catalogue sys.endpoints. Des informations sur les autorisations de serveur sont consultables dans l'affichage catalogue sys.server_permissions et des informations sur les principaux de serveur sont consultables dans l'affichage 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 de refuser 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

A.Refus 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 refusée à la connexion SQL Server ZArifin.

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

B.Refus d'une autorisation TAKE OWNERSHIP avec l'option CASCADE

Dans l'exemple ci-dessous, l'autorisation TAKE OWNERSHIP sur le point de terminaison Shipping83 est refusée à l'utilisateur SQL Server PKomosinski et aux principaux auxquels PKomosinski a accordé l'autorisation TAKE OWNERSHIP.

USE master;
DENY TAKE OWNERSHIP ON ENDPOINT::Shipping83 TO PKomosinski 
    CASCADE;
GO

Voir aussi

Référence

GRANT – octroi 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)

Concepts

Autorisations (moteur de base de données)

Principaux (moteur de base de données)