Partager via


CRÉER UN RÔLE (Transact-SQL)

S’applique à :SQL ServerBase de données Azure SQLAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Point de terminaison d'analyse SQL dans Microsoft FabricEntrepôt dans Microsoft FabricBase de données SQL dans Microsoft Fabric

Crée un rôle de base de données dans la base de données active.

Conventions de la syntaxe Transact-SQL

Syntaxe

CREATE ROLE role_name [ AUTHORIZATION owner_name ]  

Les arguments

role_name
Nom du rôle à créer.

OWNER_NAME D’AUTORISATION
Utilisateur ou rôle de base de données qui doit posséder le nouveau rôle. Si aucun utilisateur n'est spécifié, le rôle appartient à l'utilisateur qui exécute CREATE ROLE. Le propriétaire du rôle, ou n’importe quel membre d’un rôle propriétaire, peut ajouter des membres au rôle ou les supprimer.

Notes

Les rôles sont des éléments sécurisables au niveau base de données. Lorsque vous avez créé un rôle, configurez les autorisations au niveau base de données à l'aide des instructions GRANT, DENY et REVOKE. Pour ajouter des membres à un rôle de base de données, utilisez ALTER ROLE (Transact-SQL). Pour plus d’informations, consultez Rôles au niveau de la base de données.

Les rôles de base de données sont visibles dans les vues de catalogue sys.database_role_members et sys.database_principals.

Pour plus d’informations sur la conception d’un système d’autorisations, voir Getting Started with Database Engine Permissions.

Remarque

Les schémas ne sont pas équivalents aux utilisateurs de base de données. Utilisez les vues de catalogue système pour identifier les différences entre les utilisateurs de base de données et les schémas.

Autorisations

Nécessite l’autorisation CREATE ROLE sur la base de données ou l’appartenance au rôle de base de données fixe db_securityadmin. Quand vous utilisez l’option AUTHORIZATION, les autorisations suivantes sont également exigées :

  • Pour affecter la propriété d'un rôle à un autre utilisateur, l'autorisation IMPERSONATE est requise pour cet utilisateur.

  • Pour affecter la propriété d'un rôle à un autre rôle, l'appartenance au rôle destinataire ou l'autorisation ALTER est requise pour ce rôle.

  • Pour affecter la propriété d'un rôle à un rôle d'application, l'autorisation ALTER est requise pour ce rôle d'application.

Exemples

Les exemples suivants utilisent tous la base de données AdventureWorks.

R. Création d'un rôle de base de données possédé par un utilisateur de base de données

Le code exemple suivant crée le rôle de base de données buyers possédé par l'utilisateur BenMiller.

CREATE ROLE buyers AUTHORIZATION BenMiller;  
GO  

B. Création d'un rôle de base de données possédé par un rôle de base de données fixe

Le code exemple suivant crée le rôle de base de données auditors possédé par le rôle de base de données fixe db_securityadmin.

CREATE ROLE auditors AUTHORIZATION db_securityadmin;  
GO  

Voir aussi

Principaux (moteur de base de données)
MODIFIER LE RÔLE (Transact-SQL)
RÔLE DROP (Transact-SQL)
EVENTDATA (Transact-SQL)
sp_addrolemember (Transact-SQL)
sys.database_role_members (Transact-SQL)
sys.database_principals (Transact-SQL)
Prise en main des autorisations du moteur de base de données