REVOKE (Révocation d'autorisations de groupe de disponibilité) (Transact-SQL)

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Révoque des autorisations sur un groupe de disponibilité Always On.

Conventions de la syntaxe Transact-SQL

Syntaxe

REVOKE [ GRANT OPTION FOR ] permission  [ ,...n ]   
    ON AVAILABILITY GROUP :: availability_group_name  
    { FROM | 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  

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 qu'il est possible de révoquer 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 révoquée. Le qualificateur d’étendue ( :: ) est obligatoire.

{ FROM | TO } <server_principal> spécifie la connexion SQL Server sur laquelle l’autorisation est révoqué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.

GRANT OPTION
Indique que le droit d'accorder l'autorisation spécifiée à d'autres principaux sera révoqué. L'autorisation elle-même ne sera pas révoquée.

Important

Si le principal possède l'autorisation spécifiée sans l'option GRANT, l'autorisation elle-même sera révoquée.

CASCADE
Indique que l'autorisation en cours de révocation est également révoquée sur les principaux auxquels cette autorisation a été accordée ou révoquée par ce principal.

Important

Une révocation en cascade d'une autorisation accordée avec l'option WITH GRANT OPTION entraîne la révocation des deux options GRANT et DENY de cette autorisation.

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 révoquer l'autorisation.

Notes

Les autorisations dans l’étendue du serveur peuvent être révoqué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 révoquer 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. Révocation de l'autorisation VIEW DEFINITION sur un groupe de disponibilité

L'exemple suivant révoque l'autorisation VIEW DEFINITION sur le groupe de disponibilité MyAg sur la connexion ZArifinde SQL Server.

USE master;  
REVOKE VIEW DEFINITION ON AVAILABILITY GROUP::MyAg TO ZArifin;  
GO  

B. Révocation de l'autorisation TAKE OWNERSHIP avec l'option CASCADE

Dans l'exemple ci-dessous, l'autorisation TAKE OWNERSHIP sur le groupe de disponibilité MyAg est révoquée pour l'utilisateur SQL Server PKomosinski et pour tous les principaux auxquels PKomosinski a accordé l'autorisation TAKE sur MyAg.

USE master;  
REVOKE TAKE OWNERSHIP ON AVAILABILITY GROUP::MyAg TO PKomosinski   
    CASCADE;  
GO  

C. Révocation d'une clause WITH GRANT OPTION précédemment accordée

Si une autorisation a été accordée avec WITH GRANT OPTION, utilisez REVOKE GRANT OPTION FOR ... pour supprimer WITH GRANT OPTION. L'exemple suivant accorde l'autorisation puis supprime la partie WITH GRANT de l'autorisation.

USE master;  
GRANT CONTROL ON AVAILABILITY GROUP::MyAg TO PKomosinski   
    WITH GRANT OPTION;  
GO  
REVOKE GRANT OPTION FOR CONTROL ON AVAILABILITY GROUP::MyAg TO PKomosinski  
CASCADE  
GO  

Voir aussi

GRANT (Octroi d'autorisations de groupe de disponibilité) (Transact-SQL)
DENY (Refus 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)