Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: One object privilege quesiton.
Violin,
Your idea is intellectually quite interesting but never implement this
in this way! Never ever create triggers on SYS table, especially on OBJ$
which is at the core of everything. Even if it works right know, you
never know what the next release has in store. Moreover, your
hard-coding the user id (user#) is especially dangerous; quite possibly
some users where created BEFORE the user you are interested in which
have been since dropped. If you ever do a dull exp/imp, your user# will
probably change.
Do you absolutely need 'real time' grants? I doubt it. Instead of
playing around with SYS tables, I rather suggest you create an Oracle
job (using the dbms_job package), started by AP_DBA, which runs at the
frequency which suits you a procedure (owned by AP_DBA) which looks for
objects which were created since the last time it ran (by the way, type
for tables is 2, not 1. 1 are indexes). Since you are using Oracle7
syntax (you would have written type# with Oracle8) beware however that
Oracle jobs behave well; I have had problems with 7.2, although it was
OK with prior versions and with 7.3
And try to calm down developers if they are creating tables at a rate which justifies this kind of processing ...
--
Regards,
Stéphane Faroult
Oriole Corporation