Block Package and Procedure Execute

Hello,

We have some users that have execute privilege at packages and procedures, to be used inside forms. But they are running the procedures directly from PL/SQL Developer. There is any way to block the execution of procedures and packages from PL/SQL Developer for all users?
 
you can filter on program.

Code:
....
v_program varchar2(48);
v_allow varchar2(3);
....
select program
into v_program
from v$session
where sid = USERENV( 'SID' );

case v_program
  when 'FORMS EXECUTABLE' then
    v_allow := 'yes';
  else
    v_allow := 'no';
end case;

if( v_allow = 'no' ) then
  raise_application_error( -20001, 'You must execute this procedure using forms' );
end if;
....
 
Back
Top