oracle透過trigger來限制使用者和ip連線資料庫的限制

mengbing1990發表於2017-03-31
DROP TRIGGER SYSTEM.USER_IP_LIMIT;

CREATE OR REPLACE TRIGGER SYSTEM.USER_IP_LIMIT
AFTER LOGON
ON DATABASE
DECLARE
  username   varchar2(64);
  ipinfo     varchar2(64);   
BEGIN  
    SELECT SYS_CONTEXT('USERENV', 'SESSION_USER') ,SYS_CONTEXT('USERENV', 'IP_ADDRESS')   
    INTO username,ipinfo   
    FROM dual;   
    if username='CTDSP_OEE' and ipinfo not in ('172.30.xx.xx','172.16.xx.xx','172.16.xx.xx','172.30.xx.xx','172.16.xx.xx','172.16.xx.xx','172.30.xx.xx','172.16.xx.xx','172.16.xx.xx','172.30.xx.xx','172.16.xx.xx') then
     raise_application_error(-20009,'your connection dose not permit!!!');
    end if;
END;
/
透過以上觸發器的編寫,來限制指定使用者透過指定ip登入的限制。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29551564/viewspace-2136383/,如需轉載,請註明出處,否則將追究法律責任。

相關文章