在開發中需要在Oracle進行http請求,但是需要先創建ACL權限才行(在管理員賬號下創建),所以記錄一下
begin dbms_network_acl_admin.create_acl ( -- 創建訪問控制文件(ACL) acl => '/sys/acls/sendtodata.xml', -- 文件名稱 description => 'Sendmail Access', -- 描述 principal => 'BIDM', -- 授權或者取消授權數據庫賬號,大小寫敏感 is_grant => TRUE, -- 授權還是取消授權 privilege => 'connect', -- 授權或者取消授權的權限列表 start_date => null, -- 起始日期 end_date => null -- 結束日期 ); dbms_network_acl_admin.add_privilege ( -- 添加訪問權限列表項 acl => '/sys/acls/sendtodata.xml', -- 剛才創建的acl名稱 principal => 'BIDM', -- 授權或取消授權用戶 is_grant => TRUE, -- 與上同 privilege => 'resolve', -- 權限列表 start_date => null, end_date => null ); dbms_network_acl_admin.assign_acl ( -- 該段命令意思是允許訪問acl名為/sys/acls/sendtodata.xml下授權的用戶,使用oracle網絡訪問包,所允許訪問的目的主機,及其端口范圍。 acl => '/sys/acls/sendtodata.xml', host => '*'-- , -- ip地址或者域名,填寫http://localhost:9000/hello與http://localhost:9000/是會報host無效的 -- 且建議使用ip地址或者使用域名,若用localhost,當oracle不是安裝在本機上的情況下,會出現問題 -- lower_port => 0, -- 允許訪問的起始端口號 0/null -- upper_port => Null -- 允許訪問的截止端口號 9000/null ); commit; end;