Share via


GRANT (Octroi d'autorisations de groupe de disponibilité) (Transact-SQL)

Octroie des autorisations sur un groupe de disponibilité AlwaysOn.

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

Syntaxe

GRANT permission  [ ,...n ] ON AVAILABILITY GROUP :: availability_group_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

Arguments

  • permission
    Spécifie une autorisation qu'il est possible d'accorder sur un groupe de disponibilité. Vous trouverez la liste des autorisations dans 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 accordée. Le qualificateur d'étendue (
    ::
    ) est requis.

  • TO <principal_de_serveur>
    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 sera également en mesure 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 lorsque la base de données active est master.

Les informations relatives aux groupes de disponibilité sont visibles dans l'affichage catalogue sys.availability_groups (Transact-SQL). 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 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 d'accorder 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

Pour un graphique de toutes les autorisations du Moteur de base de données, consultez Affiche des autorisations du moteur de base de données.

Autorisations

Requiert l'autorisation CONTROL sur le groupe de disponibilité ou l'autorisation ALTER ANY AVAILABILTIY GROUP sur le serveur.

Exemples

A.Octroi de l'autorisation VIEW DEFINITION sur un groupe de disponibilité

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

USE master;
GRANT VIEW DEFINITION ON AVAILABILITY GROUP::MyAg 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 groupe de disponibilité MyAg est accordée à l'utilisateur SQL Server PKomosinski avec l'option GRANT OPTION.

USE master;
GRANT TAKE OWNERSHIP ON AVAILABILITY GROUP::MyAg TO PKomosinski 
    WITH GRANT OPTION;
GO

C.Accorder l'autorisation CONTROL sur un groupe de disponibilité

L'exemple suivant octroie l'autorisation CONTROL sur le groupe de disponibilité MyAg à l'utilisateur SQL Server PKomosinski. CONTROL permet un contrôle total des connexions du groupe de disponibilité, même s'il ne s'agit pas du propriétaire du groupe de disponibilité. Pour modifier la propriété, consultez ALTER AUTHORIZATION (Transact-SQL).

USE master;
GRANT CONTROL ON AVAILABILITY GROUP::MyAg TO PKomosinski;
GO

Voir aussi

Référence

REVOKE (Révocation 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)

Concepts

Autorisations (moteur de base de données)

Principaux (moteur de base de données)

Autres ressources

Vues de catalogue des groupes de disponibilité AlwaysOn (Transact-SQL)