Answer Posted / swapna
Definer Rights
--------------
A routine stored in the database by default, is executed
with the definer rights (owner of the routine), depending
on the user who calls it.
For example, table "Test" belongs to schema A. User A
creates a procedure PR_TEST allowing for updates of a
table. User B is granted execute privileges on the
procedure. Now user B cannot access the table as no
privileges have been granted, but can call the procedure to
do the required process logic for updating the table.
Invoker Right
-------------
With Oracle 8i, there is no need for this duplication of
code. A single compiled program unit can be made to use
schema A's objects when invoked by User A and schema B's
objects when invoked by User B.
This way, we have the option of creating a code repository
in one place and sharing it with various production users.
The owner of the routine must grant EXECUTE privilege to
other users.
Is This Answer Correct ? | 2 Yes | 0 No |
Post New Answer View All Answers
Does sql view stored data?
Is full outer join same as cross join?
What is sqlcontext?
What is a temporal data type?
What are inner outer left and right joins in sql?
How to run pl/sql statements in sql*plus?
What is a system versioned table?
What are the properties of a transaction?
What is the difference between the conventional and direct path loads? : aql loader
How do I run a query in pl sql developer?
Why cannot I use bind variables in ddl/scl statements in dynamic sql?
How can you view the errors encountered in a trigger?
What is sql trigger example?
Is mariadb a nosql database?
How can we store rows in PL/SQL using array?