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> }
Copy

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;
Copy

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;
Copy

Accorde le rôle de base de données dr3 à l’utilisateur user1 :

GRANT DATABASE ROLE dr3 TO USER user1;
Copy