Ajouter des rôles IAM sur une base de données d'IA autonome

Vous pouvez éventuellement créer des rôles globaux pour fournir des privilèges et des rôles de base de données supplémentaires aux utilisateurs IAM lorsque plusieurs utilisateurs IAM sont mis en correspondance avec le même utilisateur global partagé.

L'utilisation de rôles globaux est facultative lors de l'utilisation d'une mise en correspondance IAM exclusive avec un utilisateur (schéma) ou d'une mise en correspondance utilisateur partagée sur une base de données Autonomous AI. Tous les privilèges et rôles peuvent par exemple être accordés au schéma partagé. Les utilisateurs IAM mis en correspondance avec le schéma partagé se voient alors tous accorder les privilèges et rôles affectés à ce schéma.

Vous pouvez utiliser un rôle global pour éventuellement différencier les utilisateurs qui emploient le même schéma partagé. Par exemple, tout un ensemble d'utilisateurs peut disposer du même schéma partagé, qui comporte le privilège CREATE SESSION. Les rôles globaux peuvent alors être utilisés pour affecter des privilèges et des rôles différenciés à différents groupes d'utilisateurs qui utilisent tous le même schéma partagé.

L'octroi de rôles supplémentaires aux utilisateurs IAM dans la base de données Autonomous AI fonctionne par la mise à correspondance des rôles globaux Autonomous AI Database avec des groupes IAM.

Afin de mettre en correspondance des rôles globaux de base de données Autonomous AI avec des groupes IAM, procédez ainsi :

  1. Connectez-vous en tant qu'utilisateur ADMIN à la base de données qui peut utiliser IAM (l'utilisateur ADMIN dispose des privilèges système CREATE USER et ALTER USER requis dont vous avez besoin pour ces étapes).
  2. Définissez l'autorisation de base de données pour les rôles de base de données Autonomous AI à l'aide d'instructions CREATE ROLE ou ALTER ROLE. Incluez la clause IDENTIFIED GLOBALLY AS pour préciser le nom de groupe IAM.

    Utilisez la syntaxe suivante pour mettre en correspondance un rôle global et un groupe IAM :

    CREATE ROLE global_role IDENTIFIED GLOBALLY AS
        'IAM_GROUP_NAME=IAM_GROUP_of_WHICH_the_IAM_USER_IS_a_MEMBER';

    Par exemple, pour mettre en correspondance un groupe IAM nommé ExporterGroup avec un rôle global de base de données partagé nommé export_role :

    CREATE ROLE export_role IDENTIFIED GLOBALLY AS
         'IAM_GROUP_NAME=ExporterGroup';
    

    L'exemple suivant montre comment créer le rôle en spécifiant un domaine autre que par défaut, sales_domain :

    CREATE ROLE export_role IDENTIFIED GLOBALLY AS
         'IAM_GROUP_NAME=sales_domain/ExporterGroup';
    

    Tous les membres de ExporterGroup dans le domaine sales_domain sont autorisés avec le rôle global de base de données export_role lorsqu'ils se connectent à la base de données.

  3. Utilisez des instructions GRANT pour accorder les privilèges requis ou d'autres rôles au rôle global.
    GRANT CREATE SESSION TO export_role;
    GRANT DWROLE TO export_role;
  4. Si vous voulez qu'un rôle de base de données existant soit associé à un groupe IAM, utilisez l'instruction ALTER ROLE pour modifier le rôle de base de données existant afin de le mettre en correspondance avec un groupe IAM. Utilisez la syntaxe suivante pour modifier un rôle de base de données existant afin de le mettre en correspondance avec un groupe IAM :
    ALTER ROLE existing_database_role 
       IDENTIFIED GLOBALLY AS 'IAM_GROUP_NAME=IAM_Group_Name';

Si vous voulez ajouter des correspondances de rôle global supplémentaires pour d'autres groupes IAM, suivez ces étapes pour chaque groupe IAM.