用戶登錄oracle管控TRIGGER

CREATE OR REPLACE TRIGGER TR_LOGON
AFTER LOGON ON DATABASE
DECLARE
  vip      VARCHAR2(30);
  vuser    varchar2(30);
  vhost    varchar2(50);
  vosuser  varchar2(50);
  vprogram varchar2(50);
BEGIN
   select sys_context('userenv','session_user') into vuser from dual;
   SELECT SYS_CONTEXT('USERENV','IP_ADDRESS') INTO vip FROM DUAL;
   SELECT SYS_CONTEXT('USERENV','HOST') INTO vhost FROM DUAL;
   SELECT SYS_CONTEXT('USERENV','OS_USER') INTO vosuser FROM DUAL;
   SELECT SYS_CONTEXT('USERENV','MODULE') INTO vprogram FROM DUAL;

   if vuser not in ('system') then
       sys.dbms_system.ksdwrt(2,to_char(sysdate,'yyyymmdd hh24:mi:ss')||'ip:'||vip||'want logon'||vuser);  //非system用戶登錄的信息寫入alert_orcl.log 

      RAISE_APPLICATION_ERROR (num =>-20001,msg => '只有SYSTEM用戶才可以登錄');  //提示錯誤信息給客戶端用戶。
   end if;
END;

以上內容請在sys用戶下執行,可以添加判斷達到對登錄用戶的IP、用戶、主機名進行判斷限定作業。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16381228/viewspace-710425/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/16381228/viewspace-710425/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值