Bem, vc não diz mas em primeiro lugar, entendo que vc está focando nos privilégios de sistema : obviamente, um privilégio de acesso/DDL/DML impróprio nas tabelas do aplicativo pode ** detonar ** o aplicativo, deixando-o fora de combate rapidinho, mas isso vai ser tratado/está sendo tratado numa outra atuação... Com isso em mente, eu diria : a) faltam aí checar os privilégios UNLIMITED TABLESPACE (que permite criar objs na tablespace SYSTEM, talvez até eventualmente lotando-a e assim derrubando o banco, ou no mínimo causando problemas de performance/administração), de DEBUG, ADMINISTER, , de FLASHBACK e de EXPORT : em tese não se derruba um banco com eles MAS podem causar lentidão e pros de acesso se mal-usados b) falta checar os privilégios de EXECUTE nas packages internas pertencentes ao SYS e aos schemas internos (algumas dessas são mega-poderosas, com LARGA margem para exploit c) muito importante : falta checar os privilégios de sistema recebidos por ROLES, principalmente a role DBA e as roles de operadores do database : acredite ou não, ainda hoje vc encontra aplicativo que "exige" que o usuário dono das tabs dele receba role de DBA, de DBOPER, ou coisa assim... []s Chiappa OBS : => vc pode se basear no script abaixo, que lista TODOS os privs, seja recebidos diretamente, seja por role, seja privs de execute, adapte-o pra sua necessiadde...
set echo off set verify off set pages 9999 col granted_role form a28 col owner form a15 col table_name form a33 col privilege form a33 ACCEPT username prompt 'Enter Username : ' PROMPT Roles granted to user SELECT granted_role,admin_option,default_role FROM dba_role_privs WHERE grantee=UPPER('&username') ORDER BY 1; PROMPT Table Privileges granted to a user through roles SELECT granted_role, owner, table_name, privilege FROM ( SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('&username') UNION SELECT granted_role FROM role_role_privs WHERE role in (SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('&username') ) ) roles, dba_tab_privs WHERE granted_role=grantee ORder by 1,2,3,4; PROMPT System Privileges assigned to a user through roles SELECT granted_role, privilege FROM ( SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('&username') UNION SELECT granted_role FROM role_role_privs WHERE role in (SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('&username') ) ) roles, dba_sys_privs WHERE granted_role=grantee ORDER BY 1,2; PROMPT Table privileges assigned directly to a user SELECT owner, table_name, privilege FROM dba_tab_privs WHERE grantee=UPPER('&username') ORDER BY 1,2,3; PROMPT System privileges assigned directly to a user SELECT privilege, admin_option FROM dba_sys_privs WHERE grantee=UPPER('&username') ORDER BY 1; undefine username /