Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> accessing SQLPlus variables.................Oops
The appinfo bit in the trigger got in by mistake.
so the working trigger is as follows:
create or replace trigger connect_restriction after logon on database
when (user != 'SYSTEM' and user != 'VVVVVV' and user != 'MMMMMM')
declare v_username number;
Begin
select count(*) into v_username from v$session
where upper(username) = user and status='ACTIVE' and upper(program) like 'SQLPLUS%';
if v_username > 0 then raise_application_error(-20002,'no sqlplus please'); end if;
end connect_restriction;
/
> Hello All,
>
> I want to restrict users to use application instead of using sqlplus.
> To do that using logon trigger and some reading from various sites /
> groups I got it to work.
>
> The trigger is as follows:
>
> create or replace trigger connect_restriction after logon on database
> when (user != 'SYSTEM' and user != 'VVVVVV' and user != 'MMMMMM')
> declare v_username number;
> Begin
> select count(*) into v_username from v$session
> where upper(username) = user and status='ACTIVE' and upper(program)
> like 'SQLPLUS%' ;
> if v_username > 0 then raise_application_error(-20002,'no sqlplus
> please'); end if;
> end connect_restriction;
> /
>
> If I rename my sqlplus.exe as test.exe, the trigger is fooled.
> Now if I could access sqlplus environment variable appinfo
> (sqlplus> show appinfo) in the PL/SQL block I could get the thing
> done.
>
> How do I ?
>
> Thanks in advance.
> Parag
Received on Tue Aug 06 2002 - 21:28:19 CDT
![]() |
![]() |