which they do not have any privileges?

In your multitenant container database (CDB) that contains pluggable databases (PDBs), the
hr user executes the following commands to create and grant privileges on a procedure:
CREATEORREPLACEPROCEDUREcreate_test_v(v_emp_idNUMBER,v_enameVARCHAR
2,v_SALARYNUMBER,v_dept_idNUMBER)
BEGIN
INSERT INTO hr.test VALUES (v_emp_id, v_ename, v salary, v_dept_id);
END;
/
GRANT EXECUTE ON CREATE_TEST TO John, jim, smith, king;
How can you prevent users having the execute privilege on the create_test_v procedure
from inserting values into tables on which they do not have any privileges?

In your multitenant container database (CDB) that contains pluggable databases (PDBs), the
hr user executes the following commands to create and grant privileges on a procedure:
CREATEORREPLACEPROCEDUREcreate_test_v(v_emp_idNUMBER,v_enameVARCHAR
2,v_SALARYNUMBER,v_dept_idNUMBER)
BEGIN
INSERT INTO hr.test VALUES (v_emp_id, v_ename, v salary, v_dept_id);
END;
/
GRANT EXECUTE ON CREATE_TEST TO John, jim, smith, king;
How can you prevent users having the execute privilege on the create_test_v procedure
from inserting values into tables on which they do not have any privileges?

A.
Create the create_test procedure with definer’s rights.

B.
Grant the execute privilege to users with grant option on the create_test procedure.

C.
Create the create_test procedure with invoker’s rights.

D.
Create the create_test procedure as part of a package and grant users the execute
privilege on the package.



Leave a Reply 3

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


Vonpire

Vonpire

C is correct

You can control access to privileges that are necessary to run user-created procedures by using definer’s rights, which execute with the privileges of the owner, or with invoker’s rights, which execute with the privileges of the user running the procedure.