主頁 > 知識庫 > [Oracle] 如何使用觸發(fā)器實現(xiàn)IP限制用戶登錄

[Oracle] 如何使用觸發(fā)器實現(xiàn)IP限制用戶登錄

熱門標簽:百度地圖標注素材 開封智能外呼系統(tǒng)廠家 人工智能地圖標注自己能做嗎 征服者火車站地圖標注 word地圖標注方向 阿爾巴尼亞地圖標注app 美圖秀秀地圖標注 征服眼公司地圖標注 外呼線路外顯本地號碼
下面是一個觸發(fā)器的例子:
復制代碼 代碼如下:

create or replace trigger logon_ip_control
after logon on database
declare
  ip STRING(30);
  user STRING(30);
begin
SELECT SYS_CONTEXT('USERENV','SESSION_USER') into user from dual;
SELECT SYS_CONTEXT('USERENV','IP_ADDRESS') into ip from dual;
if user='EPAY_USER'
  THEN
      IF ip not in ('192.168.219.20','192.168.219.22') 
      THEN raise_application_error(-20001,'User '||user||' is not allowed to connect from '||ip);
      END IF;
END IF;
end;
/

該觸發(fā)器對用戶EPAY_USER進行了IP限制(只允許'192.168.219.20','192.168.219.22',如果需要設置IP段,用%或?代替即可,如'192.168.219.%‘)。
下面看幾個例子測試一下:
1)從非允許IP地址登陸 (192.168.219.21),連接失敗
復制代碼 代碼如下:

[oracle@lxdb2 ~]$ sqlplus epay_user@pri
SQL*Plus: Release 11.2.0.3.0 Production on Wed Jul 3 19:23:48 2013
Copyright (c) 1982, 2011, Oracle.  All rights reserved.
Enter password:
ERROR:
ORA-00604: error occurred at recursive SQL level 1
ORA-20001: User EPAY_USER is not allowed to connect from 192.168.219.21
ORA-06512: at line 10

2)從允許IP地址登陸(192.168.219.22),連接成功
復制代碼 代碼如下:

[oracle@lxdb1 ~]$ sqlplus epay_user
SQL*Plus: Release 11.2.0.3.0 Production on Wed Jul 3 11:24:25 2013
Copyright (c) 1982, 2011, Oracle.  All rights reserved.
Enter password:
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

3)從本地登陸(192.168.219.23)不受IP限制影響,連接成功
復制代碼 代碼如下:

[oracle@lxdb1 ~]$ sqlplus epay_user
SQL*Plus: Release 11.2.0.3.0 Production on Wed Jul 3 11:24:25 2013
Copyright (c) 1982, 2011, Oracle.  All rights reserved.
Enter password:
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

您可能感興趣的文章:
  • 限制ip訪問Oracle數(shù)據(jù)庫的方法步驟

標簽:孝感 葫蘆島 泰安 海北 淮南 宜春 酒泉 六安

巨人網(wǎng)絡通訊聲明:本文標題《[Oracle] 如何使用觸發(fā)器實現(xiàn)IP限制用戶登錄》,本文關鍵詞  Oracle,如何,使用,觸發(fā)器,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《[Oracle] 如何使用觸發(fā)器實現(xiàn)IP限制用戶登錄》相關的同類信息!
  • 本頁收集關于[Oracle] 如何使用觸發(fā)器實現(xiàn)IP限制用戶登錄的相關信息資訊供網(wǎng)民參考!
  • 推薦文章