Which two statements regarding the above policy are correct?

You added the following policy:
EXEC DBMS_RLS.ADD_POLICY (object_schema => ‘scott’,
object_name => ’emp’,
policy_name => ‘hr_policy’,
fuction_schema => ‘scott’,
policy_function => ‘hrpol’,
policy_type => dbms_rls.static,
sec_relevant_cols => ‘sal,comm’) ;
Which two statements regarding the above policy are correct? (Choose two.)

You added the following policy:
EXEC DBMS_RLS.ADD_POLICY (object_schema => ‘scott’,
object_name => ’emp’,
policy_name => ‘hr_policy’,
fuction_schema => ‘scott’,
policy_function => ‘hrpol’,
policy_type => dbms_rls.static,
sec_relevant_cols => ‘sal,comm’) ;

Which two statements regarding the above policy are correct? (Choose two.)

A.
The policy predicate changes for each query.

B.
The policy function does not reexecute for each query.

C.
Policy predicates are cached in the System Global Area (SGA).

D.
The policy is useful where every query requires a different predicate and fast performance is not essential

Explanation:
The execution of policy functions can consume a significant amount of system resources. If you can minimize the number of times that policy functions must run, then you can optimize your database server performance. To avoid unnecessary policy function execution, you can choose from five different policy types, which enable you to precisely specify how and how often a policy predicate should change. You can enable these different types of policies, by setting the policy_type parameter of the DBMS_RLS.ADD POLICY procedure. On the question, policy_type=> ddms_rls.static , this way, static policy predicates are cached in SGA, so policy functions do not rerun for each query, resulting in faster performance. When you specify a static policy, the same predicate is always enforced for all users in the instance.

REF: Oracle(r) 10g Security Guide 15-31



Leave a Reply 0

Your email address will not be published. Required fields are marked *