I just spent 6 months doing, among other things, just this. DBA_TAB_PRIVS should probably be more accurately called DBA_OBJ_PRIVS as it has all objects' privs in it, now just tables.
Here's an example. It produces spooled output that can be run to recreate the existing privs. SELECT 'GRANT '||privilege||' on SCHEMA.'||TABLE_NAME||' TO '||grantee|| decode(grantable,'YES',' with grant option;',';') FROM dba_tab_privs WHERE OWNER = 'SCHEMA' By changing the where clause to select on GRANTEE you can get all objects across schemae. select 'grant '|| privilege|| ' ON '||owner||'.'|| TABLE_NAME|| ' to WHAZZUP? '|| decode(grantable,'YES',' with grant option;',';') from dba_tab_privs where grantee = 'WHAZZUP?' enjoy Sergey V Dolgov <dsv To: Multiple recipients of list ORACLE-L @pptus.oilnet <[EMAIL PROTECTED]> .ru> cc: Sent by: root Subject: Re: System tables for generating the object privileges 05/21/2002 11:08 PM Please respond to ORACLE-L Hello Vasu, You can find much in dba_tab_privs there is information about procedures, views, tables, synonyms in it. Wednesday, May 22, 2002, 9:03:22 AM, you wrote: VR> Hello All, VR> I am trying to generate a script to grant privileges on the DB VR> objects by extracting them from system tables. I know that the following VR> system tables can be used to get the system, role privileges, and table VR> and column access privileges. dba_sys_prives VR> dba_roll_prives VR> dba_tab_privs VR> dba_col_privs VR> I am not able to find the system tables to get the privileges assigned VR> to users on stored procedures, views and synonyms etc. Can you please VR> throw some light on this? VR> Thanks for your help. VR> Vasu -- Best regards, Sergey mailto:[EMAIL PROTECTED] -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Sergey V Dolgov INET: [EMAIL PROTECTED] Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Thomas Day INET: [EMAIL PROTECTED] Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).