Oracle has very good reason to have this role limitation.
 
Suppose you have a role role_a. Through this role you have access to a table table_b. Now you create a procedure that accesses table_b. An assume that your privileges are valid through role only.
 
And some wise guy/gal comes in and revokes the role ... what happens next?
 
To avoid this situation, Oracle requires that if you will be referring the objects inside stored code, you need EXPLICIT privileges. Create any outline now makes sense because now all the tables will be in on schema.
 
Raj
______________________________________________________

Rajendra Jamadagni              MIS, ESPN Inc.

Rajendra dot Jamadagni at ESPN dot com

Any opinion expressed here is personal and doesn't reflect that of ESPN Inc.

QOTD: Any clod can have facts, but having an opinion is an art!

-----Original Message-----
From: Shaleen [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, December 24, 2002 2:14 PM
To: Multiple recipients of list ORACLE-L
Subject: unable to create stored outline for sql inside a procedure --Resolved

All,
 
Oracle support was able to resolve this issue for me and I would like to share the learning. The problem was that I was unable to create stored outline for sql executing within a stored procedure after turning create_stored_outlines=true. Create outlines for sql satetements executing from sqlplus/plsql blocks was not an issue.
 
The problem is resolved by granting create any outline privilege to the user explicitly.
 
Once I again I was bit by the limitation of roles not passing privilege within stored procedures and this has to be done explicitly. Why oracle has this limitation beats me!!
 
Thanks for help Jared & Raj.
 
Shaleen
*********************************************************************This e-mail 
message is confidential, intended only for the named recipient(s) above and may 
contain information that is privileged, attorney work product or exempt from 
disclosure under applicable law. If you have received this message in error, or are 
not the named recipient(s), please immediately notify corporate MIS at (860) 766-2000 
and delete this e-mail message from your computer, Thank 
you.*********************************************************************1


Reply via email to