GRANT DATABASE ROLE¶
Attribue un rôle de base de données à un rôle de compte, autre rôle de base de données ou utilisateur. Un utilisateur disposant du privilège OWNERSHIP sur un rôle de base de données peut accorder ce rôle de base de données soit à un rôle de compte, soit à un autre rôle de base de données, soit encore à un utilisateur de la même base de données. Le fait d’accorder un rôle de base de données à un autre rôle crée une relation « parent-enfant » (également appelée hiérarchie de rôles) entre le rôle de base de données et l’autre rôle. Pour connaître les limitations spécifiques des rôles de base de données, consultez Rôles et hiérarchies des rôles dans les bases de données.
- Voir aussi :
REVOKE DATABASE ROLE, GRANT ROLE, REVOKE ROLE, GRANT <privilèges> … TO ROLE
Syntaxe¶
GRANT DATABASE ROLE <name> TO { DATABASE ROLE <parent_role_name> | ROLE <parent_role_name> | USER <user_name> }
Paramètres¶
name
Spécifie l’identificateur (le nom) du rôle de base de données ; doit être unique dans la base de données dans laquelle le rôle de base de données est créé.
Si l’identificateur contient des espaces ou des caractères spéciaux, toute la chaîne doit être délimitée par des guillemets doubles. Les identificateurs entre guillemets doubles sont également sensibles à la casse.
Pour plus d’informations, voir Exigences relatives à l’identificateur.
Si l’identificateur n’est pas complet sous la forme de
db_name.database_role_name
, la commande recherche le rôle de base de données dans la base de données actuelle de la session.DATABASE ROLE parent_role_name
Accorde le rôle de base de données au rôle de base de données spécifié. Si le rôle parent est un rôle de base de données et que l’identificateur n’est pas tout à fait complet (sous la forme
db_name.database_role_name
), la commande recherche le rôle de base de données dans la base de données actuelle pour la session.ROLE parent_role_name
Accorde le rôle de base de données au rôle de compte spécifié.
USER user_name
Accorde le rôle de base de données à l’utilisateur spécifié.
Exigences en matière de contrôle d’accès¶
Un rôle utilisé pour exécuter cette opération doit au minimum disposer des privilèges suivants :
Privilège ou rôle |
Objet |
Remarques |
---|---|---|
OWNERSHIP |
Rôle de la base de données |
OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege). |
Exemples¶
Accorde le rôle de base de données analyst
au rôle SYSADMIN :
GRANT DATABASE ROLE analyst TO ROLE SYSADMIN;
Accorde le rôle de base de données dr1
au rôle de base de données dr2
:
GRANT DATABASE ROLE dr1 TO DATABASE ROLE dr2;
Accorde le rôle de base de données dr3
à l’utilisateur user1
:
GRANT DATABASE ROLE dr3 TO USER user1;