Advantages of invoker rights, PL-SQL Programming

Advantages of Invoker Rights

The Invoker-rights routines centralize the data retrieval. They are particularly helpful in applications which store data in various schemas. In such situations, the multiple users can manage their own data using the single code base.

Consider a company which uses a definer-rights procedure to analyze the sales. To provide the local sales statistics, the procedure analyze should access the sales tables that exist in at each regional site. Therefore, as figure shows, the procedure should also exist in at each regional site. That causes a maintenance trouble.

1298_advantages of invoker rights.png

Figure: Definer Rights Problem

To resolve the problem, the company installs invoker-rights version of procedure analyzes at the headquarters. Now, as figure shows, all the regional sites can use similar procedure to query their own sales tables.

1426_advantages of invoker rights1.png

Figure: Invoker Rights Solution

The Invoker-rights routines also restrict the access to the sensitive data. Assume that the headquarters would like procedure analyze to compute the sales commissions and update the central payroll table.

That represents a problem as invokers of analyze must not have the direct access to the payroll table that stores the employee salary and other sensitive data. As figure shows, the answer is to have procedure analyze to call the definer-rights procedure calc_comm that in turn updates the payroll table.

605_advantages of invoker rights2.png

Figure: Indirect Access

Posted Date: 10/5/2012 5:43:37 AM | Location : United States







Related Discussions:- Advantages of invoker rights, Assignment Help, Ask Question on Advantages of invoker rights, Get Answer, Expert's Help, Advantages of invoker rights Discussions

Write discussion on Advantages of invoker rights
Your posts are moderated
Related Questions
Why Use Cursor Variables ? Primarily, you use the cursor variables to pass the query result sets between the PL/SQL stored subprograms and different clients. Neither PL/SQL nor

%ROWCOUNT When its cursor or cursor variable is opened, the %ROWCOUNT is zeroed. Before the first fetch, the %ROWCOUNT yields 0. Afterward, it yields the number of rows fetche

Updating a Variable Assignment of an attribute value in a variable of a structured type Synatx: SET SN.C = 'S2'; As in Example the entire statement is equivalent to a

a. Write an anonymous block that contains a PL/SQL function. Given an order number orderNo, the function will calculate the total number of the parts in the order. Then the anonym

UPDATE Statement   The UPDATE statement transforms the values of the specified columns in one or more rows in the table or view. Syntax:

Creating a Table Syantax: CREATE TABLE ENROLMENT (StudentId SID, Name   VARCHAR (30) NOT NULL, CourseId CID, PRIMARY KEY (StudentId, CourseId)) ; Explan

Selecting Objects: Suppose that you have run the SQL*Plus script below that creates object type Person and object table persons, and that you have settled the table: CREATE

Consider the following set of database tables (same tables from Assignment 6-1). Please take note of foreign keys (most of them carry the same names as the corresponding primary ke

ROWNUM The ROWNUM returns a number representing the order in which a row was selected from the table. The first row selected has a ROWNUM of 1; the second row has a ROWNUM of

Using Operator DEREF: You cannot navigate through refs within the PL/SQL procedural statements. Rather than, you should use the operator DEREF in the SQL statement. The DEREF