Share via


GRANT - Autorisations sur un assembly (Transact-SQL)

Accorde des autorisations sur un assembly.

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

Syntaxe

GRANT { permission [ ,...n ] } ON ASSEMBLY :: assembly_name
    TO database_principal [ ,...n ]
    [ WITH GRANT OPTION ]
    [ AS granting_principal ]

Arguments

  • permission
    Spécifie une autorisation qu'il est possible d'accorder sur un assembly. Voir ci-dessous.

  • ON ASSEMBLY **::**assembly_name
    Spécifie l'assembly sur lequel l'autorisation est accordée. Le qualificateur d'étendue "::" est obligatoire.

  • database_principal
    Spécifie le principal auquel l'autorisation est accordée. Il peut s'agir :

    • d'un utilisateur de base de données ;

    • d'un rôle de base de données ;

    • d'un rôle d'application ;

    • d'un utilisateur de base de données mappé sur une connexion Windows ;

    • d'un utilisateur de base de données mappé sur un groupe Windows ;

    • d'un utilisateur de base de données mappé sur un certificat ;

    • d'un utilisateur de base de données mappé sur une clé asymétrique ;

    • d'un utilisateur de base de données qui n'est pas mappé sur le principal d'un serveur.

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

  • AS granting_principal
    Spécifie un principal dont le principal qui exécute cette requête dérive son droit d'accorder l'autorisation. Il peut s'agir :

    • d'un utilisateur de base de données ;

    • d'un rôle de base de données ;

    • d'un rôle d'application ;

    • d'un utilisateur de base de données mappé sur une connexion Windows ;

    • d'un utilisateur de base de données mappé sur un groupe Windows ;

    • d'un utilisateur de base de données mappé sur un certificat ;

    • d'un utilisateur de base de données mappé sur une clé asymétrique ;

    • d'un utilisateur de base de données qui n'est pas mappé sur le principal d'un serveur.

Notes

Un assembly est un élément sécurisable au niveau base de données contenu par la base de données parente dans la hiérarchie des autorisations. Les autorisations les plus particulières et les plus limitées qu'il est possible d'accorder sur un assembly sont mentionnées ci-dessous, ainsi que les autorisations plus générales qui les englobent implicitement.

Autorisation sur un assembly

Impliquée par une autorisation sur un assembly

Impliquée par une autorisation de base de données

CONTROL

CONTROL

CONTROL

TAKE OWNERSHIP

CONTROL

CONTROL

ALTER

CONTROL

ALTER ANY ASSEMBLY

REFERENCES

CONTROL

REFERENCES

VIEW DEFINITION

CONTROL

VIEW DEFINITION

Autorisations

Le fournisseur d'autorisations (ou le principal spécifié avec l'option AS) doit posséder l'autorisation elle-même avec l'option GRANT OPTION ou une autorisation plus élevée qui implique l'autorisation accordée.

En cas d'utilisation de l'option AS, ces critères s'appliquent.

AS granting_principal

Autres autorisations nécessaires

Utilisateur de base de données

Autorisation IMPERSONATE sur l'utilisateur, appartenance aux rôles de base de données fixe db_securityadmin ou db_owner ou appartenance au rôle de serveur fixe sysadmin.

Utilisateur de base de données mappé sur une connexion Windows

Autorisation IMPERSONATE sur l'utilisateur, appartenance aux rôles de base de données fixe db_securityadmin ou db_owner ou appartenance au rôle de serveur fixe sysadmin.

Utilisateur de base de données mappé sur un groupe Windows

Appartenance au groupe Windows, appartenance aux rôles de base de données fixe db_securityadmin ou db_owner ou appartenance au rôle de serveur fixe sysadmin.

Utilisateur de base de données mappé sur un certificat

Appartenance aux rôles de base de données fixe db_securityadmin ou db_owner ou appartenance au rôle de serveur fixe sysadmin.

Utilisateur de base de données mappé sur une clé asymétrique

Appartenance aux rôles de base de données fixe db_securityadmin ou db_owner ou appartenance au rôle de serveur fixe sysadmin.

Utilisateur de base de données qui n'est mappé sur aucun principal d'un serveur

Autorisation IMPERSONATE sur l'utilisateur, appartenance aux rôles de base de données fixe db_securityadmin ou db_owner ou appartenance au rôle de serveur fixe sysadmin.

Rôle de base de données

Autorisation ALTER sur le rôle, appartenance aux rôles de base de données fixe db_securityadmin ou db_owner ou appartenance au rôle de serveur fixe sysadmin.

Rôle d'application

Autorisation ALTER sur le rôle, appartenance aux rôles de base de données fixe db_securityadmin ou db_owner ou appartenance au rôle de serveur fixe sysadmin.

Les propriétaires d'objets peuvent accorder des autorisations sur les objets qu'ils possèdent. Les principaux ayant l'autorisation CONTROL sur un élément sécurisable peuvent accorder une autorisation sur cet élément.

Les détenteurs de l'autorisation CONTROL SERVER, tels que les membres du rôle de serveur fixe sysadmin, peuvent accorder une autorisation sur n'importe quel élément sécurisable du serveur. Les détenteurs de l'autorisation CONTROL sur une base de données, tels que les membres du rôle de base de données fixe db_owner, peuvent accorder une autorisation sur n'importe quel élément sécurisable de la base de données. Les détenteurs de l'autorisation CONTROL sur un schéma peuvent accorder une autorisation sur n'importe quel objet dans ce schéma.

Voir aussi

Référence

GRANT (Transact-SQL)

CREATE CERTIFICATE (Transact-SQL)

CREATE ASYMMETRIC KEY (Transact-SQL)

CREATE APPLICATION ROLE (Transact-SQL)

Concepts

Autorisations (moteur de base de données)

Principaux (moteur de base de données)

Hiérarchie de chiffrement