PLSQL ACL訪問控制

BEGIN

 

--create an acl

--創建訪問控制文件(ACL)

dbms_network_acl_admin.create_acl(acl => '/sys/acls/scp_http_request.xml', --文件名稱

description => 'HTTP Access', --描述

principal => 'EECDEV', -- the user name trying to access the network resource

-- 授權或者取消授權賬號,大小寫敏感(用大寫可以,小寫報錯)

is_grant => TRUE, -- 授權還是取消授權

privilege => 'connect', -- 授權或者取消授權的權限列表

start_date => NULL, -- 起始日期 最好寫上起始日期,沒寫權限一會就失效

end_date => NULL); --結束日期 最好寫上起始日期,沒寫權限一會就失效

-- granted with the appropriate privilege

-- 添加訪問權限列表項

dbms_network_acl_admin.add_privilege(acl => '/sys/acls/scp_http_request.xml', -- 剛纔創建的acl名稱

principal => 'EECDEV', -- 授權或取消授權用戶

is_grant => TRUE, -- 授權還是取消授權

privilege => 'connect'); -- 權限列表

 

-- assign the acl

-- 該段命令意思是允許訪問acl名爲utl_http.xml下授權的用戶,使用oracle網絡訪問包,所允許訪問的目的主機,及其端口範圍。

dbms_network_acl_admin.assign_acl(acl => '/sys/acls/scp_http_request.xml',

host => '172.16.6.237', --UAT 爲172.16.6.158(內網),生產域名 mdmapi.rajax.me(待提供)

-- ip地址或者域名,填寫http://localhost:9000/hello與http://localhost:9000/是會報host無效的

lower_port => 1024, -- 允許訪問的起始端口號

upper_port => 9999); -- 允許訪問的截止端口號

 

END;

 

begin

dbms_network_acl_admin.drop_acl('/sys/acls/scp_http_request.xml');

end;

 

select host, lower_port, upper_port, acl from dba_network_acls d where d.ACL = '/sys/acls/scp_http_request.xml';

 

發佈了19 篇原創文章 · 獲贊 1 · 訪問量 3486
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章