Con l’articolo Query PRIVILEGI UTENTE replicati, possiamo recuperare tutti i RUOLI,
i PRIVILEGI di sistema e i PRIVILEGI sugli oggetti di un UTENTE e costruire il comando di GRANT assegnandoli ad un altro UTENTE.
Quando viene creato un utente nel database Oracle, se non vengono assegnati ruoli o privilegi, l’utente non potrà fare nulla.
Un utente per potersi collegare occorre al database deve avere assegnato o il ruolo CONNECT o il privilegio CREATE SESSION.
Qual’è la differenza tra RUOLO o PRIVILEGIO?
Un RUOLO è un contenitore di privilegi. Noi possiamo creare un RUOLO adhoc per un determinato tipo di utenza e all’interno possiamo assegnare i PRIVILEGI per poter fare le operazioni per cui è autorizzato l’utente.
Invece di assegnare numerosi PRIVILEGI all’utente, assegnamo numerosi PRIVILEGI a un RUOLO e successivamente assegnamo un RUOLO all’utente.
Oltre ai PRIVILEGI DI SISTEMA esistono i PRIVILEGI SUGLI OGGETTI, che determinano la specifica operazione DML (INSERT, UPDATE, DELETE…) che può effettuare un utente con gli oggetti di un altro utente.
Nel caso in cui volessimo assegnare gli stessi RUOLI o PRIVILEGI di un utente, possiamo procedere con le seguenti query dinamiche.
Query dinamica per assegnare Ruoli di un utente:
select 'grant ' ||granted_role || ' to &userid' ||
decode(admin_option, 'NO', ';', 'YES', ' with admin option;') "ROLE"
from dba_role_privs
where grantee = '&userid';
Query PRIVILEGI UTENTE replicati
Statement per assegnare Privilegi sugli oggetti di un utente:
select 'grant '||privilege||' on '||owner||'.'||table_name||' to '||grantee||';'
from dba_tab_privs where grantor = '&userid';
Query dinamica per assegnare Privilegi di un utente:
select 'grant ' || privilege || ' to &quserid' ||
decode(admin_option, 'NO', ';', 'YES', ' with admin option;') "PRIV"
from dba_sys_privs
where grantee = '&userid';
- DDL di creazione UTENZA, RUOLI e PRIVILEGI
- Query PRIVILEGI UTENTE replicati
- Query PRIVILEGI sugli OGGETTI UTENTE Oracle
- Query PRIVILEGI di SISTEMA UTENTE
- Query RUOLI UTENTE Oracle
- Assegnazione quota DEFAULT_TABLESPACE
- Query stato password utente Oracle
Per visionare le mie guide sui Comandi CRS clicca qui!
A questo LINK, invece, troverai le query SQL
Resta aggiornato sulle nostre attività entrando a far parte della nostra community:
Facebook
Youtube
Linkedin