CVPRADO,
Existem algumas views que pode te dar uma visão mais refinada.
Este SQL mostra os privilégios de tabelas atribuido ao usuário “USER”.
SELECT *
FROM DBA_TAB_PRIVS
WHERE GRANTEE=’USER’;
Este SQL mostra os privilégios de sistema atribuidos ao usuário “USER”.
SELECT *
FROM DBA_SYS_PRIVS
WHERE GRANTEE=’USER’;
Este SQL mostra os privilégios atribuidos a role “NEW_ROLE”.
SELECT *
FROM DBA_ROLE_PRIVS
WHERE GRANTEE=”NEW_ROLE”;
Ou você pode uni-las para ter uma visão mais ampla como:
SELECT r.GRANTEE
,r.GRANTED_ROLE
,r.ADMIN_OPTION
,s.PRIVILEGE
,t.OWNER
,t.TABLE_NAME
,t.PRIVILEGE
from DBA_ROLE_PRIVS r INNER JOIN DBA_SYS_PRIVS s
on r.GRANTEE = s.GRANTEE
INNER JOIN DBA_TAB_PRIVS t
on r.GRANTEE = t.GRANTEE
Where r.GRANTEE =’USER’;
Bom espero ter ajudado de alguma forma, Abraço!
Rodrigo Santana.