在开发中需要在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;