DENY (Refus d'autorisations de groupe de disponibilité) (Transact-SQL)
S'applique à : SQL Server
Refuse des autorisations sur un groupe de disponibilité Always On dans SQL Server.
Conventions de la syntaxe Transact-SQL
Syntaxe
DENY permission [ ,...n ] ON AVAILABILITY GROUP :: availability_group_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 qu'il est possible de refuser sur un groupe de disponibilité. Pour obtenir la liste des autorisations, consultez la section Notes plus loin dans cette rubrique.
ON AVAILABILITY GROUP ::availability_group_name
Spécifie le groupe de disponibilité sur lequel l'autorisation est refusée. Le qualificateur d’étendue ( :: ) est obligatoire.
TO <server_principal>
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 quand la base de données active est master.
Des informations sur les groupes de disponibilité sont consultables dans la vue de catalogue sys.availability_groups (Transact-SQL). 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 groupe de disponibilité 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 groupe de disponibilité sont répertoriées dans le tableau ci-dessous, avec les autorisations plus générales qui les incluent de manière implicite.
Autorisations de groupe de disponibilité | Impliquée par une autorisation de groupe de disponibilité | Déduite d'une autorisation de serveur |
---|---|---|
ALTER | CONTROL | ALTER ANY AVAILABILITY GROUP |
CONNECT | CONTROL | CONTROL SERVER |
CONTROL | CONTROL | CONTROL SERVER |
TAKE OWNERSHIP | CONTROL | CONTROL SERVER |
VIEW DEFINITION | CONTROL | VIEW ANY DEFINITION |
Autorisations
Nécessite l’autorisation CONTROL sur le groupe de disponibilité ou l’autorisation ALTER ANY AVAILABILITY GROUP sur le serveur.
Exemples
R. Refus de l'autorisation VIEW DEFINITION sur un groupe de disponibilité
L'exemple suivant refuse l'autorisation VIEW DEFINITION
sur le groupe de disponibilité MyAg
sur la connexion ZArifin
de SQL Server.
USE master;
DENY VIEW DEFINITION ON AVAILABILITY GROUP::MyAg TO ZArifin;
GO
B. Refus d'une autorisation TAKE OWNERSHIP avec l'optio CASCADE
Dans l'exemple ci-dessous, l'autorisation TAKE OWNERSHIP
sur le groupe de disponibilité MyAg
est refusée à l'utilisateur SQL Server PKomosinski
avec l'option CASCADE
.
USE master;
DENY TAKE OWNERSHIP ON AVAILABILITY GROUP::MyAg TO PKomosinski
CASCADE;
GO
Voir aussi
REVOKE (Révocation d'autorisations de groupe de disponibilité) (Transact-SQL)
GRANT (Octroi d'autorisations de groupe de disponibilité) (Transact-SQL)
CREATE AVAILABILITY GROUP (Transact-SQL)
sys.availability_groups (Transact-SQL)
Affichages catalogue des groupes de disponibilité Always On (Transact-SQL)
Autorisations (moteur de base de données)
Principaux (moteur de base de données)