Aggiungi ruoli IAM in Autonomous Database

Facoltativamente, creare ruoli globali per fornire ulteriori ruoli e privilegi di database agli utenti IAM quando più utenti IAM sono mappati allo stesso utente globale condiviso.

L'uso dei ruoli globali è facoltativo quando si utilizza un mapping IAM esclusivo agli utenti (schema) o un mapping utenti condiviso su Autonomous Database. Ad esempio, tutti i privilegi e i ruoli possono essere concessi allo schema condiviso e a tutti gli utenti IAM mappati allo schema condiviso verranno concessi i privilegi e i ruoli assegnati allo schema condiviso.

È possibile utilizzare un ruolo globale per differenziare facoltativamente gli utenti che utilizzano lo stesso schema condiviso. Ad esempio, un set di utenti può avere tutti lo stesso schema condiviso e lo schema condiviso può avere il privilegio CREATE SESSION. I ruoli globali possono quindi essere utilizzati per fornire privilegi e ruoli differenziati assegnati a gruppi diversi di utenti che utilizzano tutti lo stesso schema condiviso.

La concessione di ruoli aggiuntivi agli utenti IAM in Autonomous Database funziona mappando i ruoli globali di Autonomous Database ai gruppi IAM.

Per mappare i ruoli globali di Autonomous Database ai gruppi IAM:

  1. Eseguire il login come utente ADMIN al database abilitato per l'utilizzo di IAM (l'utente ADMIN dispone dei privilegi di sistema CREATE USER e ALTER USER necessari per questi passi).
  2. Impostare l'autorizzazione del database per i ruoli di Autonomous Database con istruzioni CREATE ROLE o ALTER ROLE e includere la clausola IDENTIFIED GLOBALLY AS, specificando il nome del gruppo IAM.

    Utilizzare la sintassi seguente per mappare un ruolo globale a un gruppo IAM:

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

    Ad esempio, per mappare un gruppo IAM denominato ExporterGroup a un ruolo globale del database condiviso denominato export_role:

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

    L'esempio seguente mostra come creare il ruolo specificando un dominio non predefinito, sales_domain:

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

    Tutti i membri di ExporterGroup nel dominio sales_domain verranno autorizzati con il ruolo globale del database export_role quando eseguono il login al database.

  3. Utilizzare le istruzioni GRANT per concedere i privilegi richiesti o altri ruoli al ruolo globale.
    GRANT CREATE SESSION TO export_role;
    GRANT DWROLE TO export_role;
  4. Se si desidera associare un ruolo di database esistente a un gruppo IAM, utilizzare l'istruzione ALTER ROLE per modificare il ruolo di database esistente per mappare il ruolo a un gruppo IAM. Utilizzare la sintassi seguente per modificare un ruolo di database esistente per mapparlo a un gruppo IAM:
    ALTER ROLE existing_database_role 
       IDENTIFIED GLOBALLY AS 'IAM_GROUP_NAME=IAM_Group_Name';

Se si desidera aggiungere ulteriori mapping di ruoli globali per altri gruppi IAM, attenersi alla procedura riportata di seguito per ogni gruppo IAM.