错误样例(使用UTL_HTTP发送http请求时,报出如下错误): 原因: 1、Oracle允许使用几个PL/SQL API(UTL_TCP, UTL_SMTP, UTL_MAIL, UTL_HTTP和 UTL_INADDR)访问外部网络服务,这些API都使用TCP协议。 2、在Oracle 10g是通过一个基于用户是否被授予执行某

错误样例(使用UTL_HTTP发送http请求时,报出如下错误):

原因:

1、Oracle允许使用几个PL/SQL API(UTL_TCP, UTL_SMTP, UTL_MAIL, UTL_HTTP和 UTL_INADDR)访问外部网络服务,这些API都使用TCP协议。

2、在Oracle 10g是通过一个基于用户是否被授予执行某个包的许可的 on/off开关来实现的,Oracle 11g引入了细粒度访问网络服务.

3、通过在XML DB 数据库中使用访问控制列表(ACL)来实现,允许控制哪个用户能够访问哪个网络资源,而不关心包的授权。

解决办法:

-- 查询网络访问控制列表 acl

?

1

Select * From dba_network_acls

-- 查询访问控制权限列表

?

1

Select * From dba_network_acl_privileges

-- 查询数据库中的用户,用户名大小写敏感

?

1

Select username From dba_users Where username Like '%ITS%'

分配acl权限,执行如下sql语句:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

begin

dbms_network_acl_admin.create_acl ( -- 创建访问控制文件(ACL)

acl => 'utl_http.xml', -- 文件名称

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

principal => 'ITS', -- 授权或者取消授权账号,大小写敏感

is_grant => TRUE, -- 授权还是取消授权

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

start_date => null, -- 起始日期

end_date => null -- 结束日期

);

dbms_network_acl_admin.add_privilege ( -- 添加访问权限列表项

acl => 'utl_http.xml', -- 刚才创建的acl名称

principal => 'ITS', -- 授权或取消授权用户

is_grant => TRUE, -- 与上同

privilege => 'resolve', -- 权限列表

start_date => null,

end_date => null

);

dbms_network_acl_admin.assign_acl ( -- 该段命令意思是允许访问acl名为utl_http.xml下授权的用户,使用oracle网络访问包,所允许访问的目的主机,及其端口范围。

acl => 'utl_http.xml',

host => '100.1.2.1', -- ip地址或者域名,填写:9000/hello与:9000/是会报host无效的

-- 且建议使用ip地址或者使用域名,若用localhost,当oracle不是安装在本机上的情况下,会出现问题

lower_port => 9000, -- 允许访问的起始端口号

upper_port => Null -- 允许访问的截止端口号

);

commit;

end;

begin

dbms_network_acl_admin.assign_acl ( -- 可以授权多个主机,或者多个主机的多个端口

acl => 'utl_http.xml',

host => '10.100.49.138',

lower_port => 80,

upper_port => NUll

);

commit;

end;

请求测试:

?

1

select utl_http.request('http://localhost:9000/hello?wsdl') From dual;

若出现no listener,是因为授权主机时不能写localhost,应该写ip地址或者域名,如下图:

移除acl和权限控制

撤销分配acl到hostacl -- 与assign对应

?

1

2

3

4

5

6

7

8

9

10

11

12

begin

dbms_network_acl_admin.unassign_acl(

acl => 'utl_http.xml',

host => '100.1.2.1',

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

oracle utl inaddr,oracle11g之ACL拙见相关推荐

  1. oracle utl inaddr,oracle11gr2中ACL对UTL_INADDR的授权报错,急急急

    本帖最后由 wdnmg 于 2011-12-4 21:01 编辑 我需要在数据库中的TEST用户中使用utl_inaddr,执行select语句出现错误: SQL> select UTL_INA ...

  2. oracle utl inaddr,Oracle包utl_inaddr

    Oracle包utl_inaddr 作用:用于取得局域网或Internet环境中的主机名和IP地址. 1.utl_inaddr.get_host_address 环境中IP地址 如果查询失败,则提示系 ...

  3. 低版本jdbc连接高版本oracle,转:oracle11g的JDBC连接 URL和之前的版本有一定的区别...

    今天安装了oracle11g后,写了JDBC测试程序,一直都连接不上! 一直找不到原因 后来读了一下安装文件中的Readme.txt文档,汗啊!这个版本居然把url的访问方式改变了: Some Use ...

  4. linux oracle bad elf,oracle11g安装到red hat6.2 64位系统报错:/lib/ld-linux.so.2: bad ELF interpreter...

    oracle11g安装到red hat6.2 64位系统报错:/lib/ld-linux.so.2: bad ELF interpreter 1.问题如下: [oracle@just ~]$ cd d ...

  5. oracle考试地点,Oracle11g认证考试主要途径

    Oracle 11g有400多项功能,经过了1500多个小时的测试,开发工作量达到了3.6万人/月,相当于1000名员工连续研发3年.Oracle 11g提供了高性能.伸展性.可用性和安全性,并能更方 ...

  6. oracle utl file grant,oracle中设置UTL_FILE_DIR参数

    oracle中设置UTL_FILE_DIR参数 第一步:以管理员用户登陆 如:conn    sys/password@sid    as    sysdba 第二步:设置可操作目录 需要指定utl_ ...

  7. oracle 渗透,渗透oracle11g

    我曾经在90sec论坛里发过这两篇文章,目测t00ls里关于oracle攻防方面的文档很少,算是科普一下,再次拿出来分享,也给自己攒点积分好能看别人发的帖子 一.  漏洞概要 漏洞描述: Oracle ...

  8. 局域网oracle无法访问,oracle11g本地可以访问但局域网无法访问

    问题描述,现在有两台电脑 A 和 B : 1)电脑 A 上有 Oracle11G服务端: ip地址 192.168.1.198; 端口1521: 2)电脑 A 本机连接数据库正常,可以登录及操作等: ...

  9. oracle exp lrm00109,oracle11g ORA-01078 LRM-00109错误

    今天在SUSE 11.1 上安装测试数据库oracle 11.2.0.3 数据库装好后,用startup启动报错, SQL> startup ORA-01078: failure in proc ...

最新文章

  1. ecshop 后台添加评论_如何提升外卖营业额?评论回复不可忽视
  2. linux e514写入错误,Linux上使用vim编辑文件保存时报错:E514: write error (file system full?)...
  3. 转:PHP应用性能优化指南
  4. 预算里怎样计算机械作业费,用实物法编制施工图预算的完整步骤有( )等。 A.计算工程量B.套用预算人工、材料、机械 - 作业在线问答...
  5. 组合数学 —— 康托展开
  6. qq批量登录软件_把微信PC版越甩越远!QQ电脑版这些新功能太良心
  7. 蓝桥杯 ADV-90 算法提高 输出日历
  8. 小猫钓鱼——栈和队列的应用(C++)
  9. mp4 文件中的h264 avc1格式介绍
  10. givens变换化上hessenborg矩阵为上三角矩阵
  11. 机器学习 | 实战(二)Fashion-MNIST
  12. 神经网络放大图片,神经网络AI滤镜
  13. C++中类所占内存,父类与子类所占内存大小的关系(详细记忆)
  14. ElasticSearch知识概括
  15. springboot 根据身份证号计算性别和年龄
  16. k8s 亲和、反亲和、污点、容忍
  17. QQ空间迁移_【SRX550_HA_以及端口绑定高可靠性尝试】
  18. springboot+vue+android商城源码
  19. “我在公司待了 6 年,清退我却只花了 6 分钟”
  20. 智慧路灯合作伙伴生态大会(深圳站)

热门文章

  1. 如何在内存序列化中使用Java深克隆对象
  2. 只读副本和Spring Data第2部分:配置基础项目
  3. 具有JDK 12精简数字格式的自定义精简数字模式
  4. 只有经验丰富的开发人员才能教您有关Java的5件事
  5. 选择的按钮:将ToggleButtons用作单选按钮
  6. apache mahout_Apache Mahout:入门
  7. 使用Xtext为Eclipse和IntelliJ开发DSL
  8. 了解Callable和Spring DeferredResult
  9. 功能项目拼图将Java 9引入
  10. 通过Spring Integration和RabbitMQ获得高可用性的AMQP支持的消息通道