Re: Refering to tables outside your schema - HELP!!!

From: Thomas J Kyte <tkyte_at_us.oracle.com>
Date: 1995/07/06
Message-ID: <3thd24$q6r_at_inet-nntp-gw-1.us.oracle.com>#1/1


Walter Marek <wmarek_at_grci.com> wrote:

>Frans & Margot <fmeeren_at_iaehv.nl> wrote:
>>walter marek <wmarek_at_grci.com> wrote:
>>>
>>> Does anyone know where this is documented in the Oracle documentation?
>>>
>>> Walt
>>> wmarek_at_grci.com
>>>
>>>
>>Hi,
>>
>> ORACLE 7 Server Concepts Manual
>> Chapter 18: Privileges and Roles
>> Paragraph : DDL Statements and Roles
>>
>>Bye,
>> Margot
>>
>Margot,
 

>The above para refers to executing DDL statements using SYSTEM privileges
>granted through roles. I am refering to the fact that stored procedures
>ignore DML statements using OBJECT privileges granted through roles.
 

>-- begin rant --
>I suppose it is possible that if they had a crystal ball, someone like
>Tom Kyte would be able to figure it out just from the concepts manual.
>I am not saying that I have every manual memorized, but I have read most
>of them and searched the on-line documentation CD and nowhere, that I
>have found, does it explicitely say that stored procedures ignore
>OBJECT privileges granted through roles.
>-- end rant --
 

>Walt
>wmarek_at_grci.com
 

>P.S. Margot, please do not take this as a personal attack against
>yourself. I thank you for trying to help. If you or anyone can cite an
>example of what I am looking for, I would like to hear about it.

OK,

Chapter 7, Application Developers Guide:

  • BEGIN QUOTE ----------------------- Privileges Required to Create Procedures and Packages

To create a stand-alone procedure or function, or package specification or body, you must meet the following prerequisites:

· You must have the CREATE PROCEDURE system privilege to create a procedure or package in your schema, or the CREATE ANY PROCEDURE system privilege to create a procedure or package in another user's schema.

To create without errors, that is, to compile the procedure or package successfully, requires the following additional privileges:

· The owner of the procedure or package must have been

explicitly 
                                                             ^^^^^^^^^
granted the necessary object privileges to all objects referenced
within the body of the code; the owner cannot have obtained required 
                                       ^^^^^^
privileges through roles.

Note: If the privileges of a procedure's or package's owner change, the procedure must be reauthenticated before it is executed. If a necessary privilege to a referenced object is revoked from the owner of the procedure (or package), the procedure cannot be executed.

  • END QUOTE --------------------------------
Thomas Kyte
tkyte_at_us.oracle.com
Oracle Government Received on Thu Jul 06 1995 - 00:00:00 CEST

Original text of this message