Facoltativamente, creare ruoli globali per fornire ulteriori ruoli e privilegi di database agli utenti IAM quando più utenti IAM vengono mappati allo stesso utente globale condiviso.
L'uso dei ruoli globali è facoltativo quando si utilizza un mapping IAM esclusivo all'utente (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 che eseguono il mapping 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 diversi gruppi di utenti che utilizzano tutti lo stesso schema condiviso.
La concessione di ruoli aggiuntivi agli utenti IAM in Autonomous Database funziona mediante il mapping dei ruoli globali di Autonomous Database ai gruppi IAM.
Per mappare i ruoli globali di Autonomous Database ai gruppi IAM, effettuare le operazioni riportate di seguito.
- Eseguire il login come utente ADMIN al database abilitato per l'uso di IAM (l'utente ADMIN dispone dei privilegi di sistema
CREATE USER
e ALTER USER
necessari per questi passi).
- Impostare l'autorizzazione del database per i ruoli di Autonomous Database con le 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 del dominio ExporterGroup
nel dominio sales_domain
saranno autorizzati con il ruolo globale del database export_role
quando eseguono il login al database.
- Utilizzare le istruzioni
GRANT
per concedere i privilegi o altri ruoli richiesti al ruolo globale.
GRANT CREATE SESSION TO export_role;
GRANT DWROLE TO export_role;
- 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 mapping di ruoli globali aggiuntivi per altri gruppi IAM, attenersi alla procedura riportata di seguito per ogni gruppo IAM.