oracle utl inaddr,oracle11g之ACL拙见

错误样例(使用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中文网,转载请注明出处,感谢您的尊重!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/335382.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mac下载JDK/安装JDK/卸载JDK

文章目录下载JDK安装JDK配置环境变量卸载JDK下载JDK 访问这个地址:https://www.oracle.com/java/technologies/downloads/#java18 进入下载JDK的界面后,下拉界面到下图所示的位置: 或者访问这个地址:https://www.oracle.com/cn/…

希腊字母常用指代意义及其中文读音

希腊字母常用指代意义及其中文读音序号大写小写英语音标注音英文汉语名称常用指代意义1Αα/lfə/alpha阿尔法角度、系数、角加速度、第一个、电离度、转化率 2Ββ/bi:tə/ 或 /beɪtə/beta贝塔角度、系数、磁通系数3Γγ/gmə/gamma伽玛电导系数、角度、比热容比 4Δδ/delt…

java redis 命令_命令界面:使用Java中的动态API处理Redis

java redis 命令Redis是一个数据存储,支持190多个文档化命令和450多个命令排列。 社区积极支持Redis开发; 每个主要的Redis版本都附带新命令。 今年,Redis向第三方供应商开放,以开发可扩展Redis功能的模块。 对于客户端开发人员和…

kettle 只有一个输入记录期待设置变量并且至少已经收到2个变量._OPNET学习笔记2...

双击主机网络打开对应的节点模型,从图中可以看到网络的分层:应用层,传输层,网络层,链路层;其中在传输层中我们用到的主要是UDP(对实时性要求比较高),网络层又包括IP封装层…

oracle10g启动顺序,oracle 10g rac维护:开机 关机顺序,流程

维护oracle rac的时候,可能需要关闭数据库,甚至关闭服务器。具体的开机关机顺序如下:(oracle 用户下)1.关机顺序(1)关闭集群oememctl stop dbconsole -cluster(2)关闭数据库实例srvctl stop instance -d EDWPRD -i EDWPRD1srvctl stop instan…

python tkinter控件_Python3 tkinter基础 Label pack 设置控件在窗体中的位置

? python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 conda : 4.5.11 type setting : Markdown ? 普通布局 code """ Author : 行初心 Date : 18-10-1 Blog : www.cnblogs.com/xingchuxin GitHub : github.com/GratefulHeartCoder ""…

oracle的mins,分钟的英文缩写,10min还是10mins!

请问,分钟的英文缩写是min,小时的英文缩写是h,还是hr?秒的..._知乎[图文]时间分钟的英文缩写是什么minutes 10 minutes意思是十分钟的,比如说路程 10minutes就是十分钟 没有10minutes这种表达[图文]分钟 min【minute】 超过多少分钟就用介词past表示超过 还差几分钟…

lucene使用3.0.3_Jirasearch 2.0狗粮:使用Lucene查找我们的Jira问题

lucene使用3.0.3几年前,我首先构建并发布了Jirasearch ,它是用于薄型包装Lucene服务器的有趣的狗粮测试用例,以针对我们的Jira问题公开强大的搜索UI。 这很好地展示了Lucene的许多重要功能: 使用块联接查询来建模父文档&#xf…

域名层级划分

文章目录教科书的定义域名结构示例教科书的定义 域名级数是指一个域名由多少级组成,域名的各个级别被 . 分开,最右边的那个词称为“顶级域名”。“顶级域名”又称之为“一级域名”,例如:.com、.org、.net、.cn 等。“二级域名”就…

java执行python脚本_使用Runtime.getRuntime().exec()在java中调用python脚本

举例有一个Python脚本叫test.py,现在想要在Java里调用这个脚本。假定这个test.py里面使用了拓展的包,使得pythoninterpreter之类内嵌的编译器无法使用,那么只能采用java调用控制台进程,即 Runtime.getRuntime().exec()&#xff0c…

linux 4.1.16 ftrace 进程调度,Linux内核进程调度overview(1)

一、概述决定何时、如何选择一个新进程运行的这组规则叫做:调度策略(scheduling policy)。Linux的调度是基于分时技术(time sharing):多个进程以“时间多路复用”方式运行,因为CPU的时间呗分成“片”(slice),给每个可运行进程分配…

postman测试工具,如何对参数使用md5加密

先创建环境变量password,并定义了变量值(例如:123456)访问登录接口通常是post提交登录用户名称和登录密码,且以json格式提交,所以在body-raw-json,填写json串如下图所示: 接着在pre-…

开源java性能分析工具_Java性能监控:您应该知道的5个开源工具

开源java性能分析工具鲜为人知但有用:开源应用程序性能监视的状态 对于任何应用程序来说,最重要的事情之一就是性能。 我们要确保用户获得他们能获得的最佳体验,并想知道我们的应用已启动并正在运行。 这就是为什么我们大多数人至少使用一种…

cmd编译可以通过执行没有结果_Go语言是如何完成编译的

Go语言是一门需要编译才能运行的编程语言,也就说代码在运行之前需要通过编译器生成二进制机器码,随后二进制文件才能在目标机器上运行,如果我们想要了解Go语言的实现原理,理解它的编译过程就是一个没有办法绕过的事情。预备知识想…

修改linux资源限制参数命令,linux passwd命令参数及用法详解--linux修改用户密码命令...

名称:passwd使用权限:所有使用者使用方式:passwd [-k] [-l] [-u [-f]] [-d] [-S] [username]说明:用来更改使用者的密码参数:-k keep non-expired authentication tokens-l 关闭账号密码。效果相当于rmod.html target…

如何通过postman测试需要登录授权的接口

思路 请求需要登录授权的接口,就意味着你要传token给接口,所以请求接口(要测试的接口)之前就要先获取token,因为登录成功后服务端才会返回token,而token又设置了时效,所以每次请求接口&#xf…

junit 静态方法_预期异常规则和模拟静态方法– JUnit

junit 静态方法今天,我被要求使用RESTful服务,所以我按照Robert Cecil Martin的TDD规则开始实施它,并遇到了一种测试预期异常以及错误消息的新方法(对我来说至少是这样),因此考虑共享我的实现方法作为这篇文…

wordpress linux 目录,快速搭建WordPress(Linux)

作者:彭济环境要求一、配置LAMP(LinuxApacheMysqlPHP)1、安装apachesudo apt-get install apache2 //安装apache2apache2 -v //查看版本网页访问本机ip地址,查看是否安装成功2、安装phpsudo apt-get install php //安装phpphp -v //查看版本sudo apt-get…

postman测试工具中的js代码中的sendRequest()使用详解

发送get请求 const url http://115.28.108.130:5000/api/user/getToken/?appid136425; // 发送get请求 pm.sendRequest(url, function (err, res) {console.log(err ? err : res.text()); // 控制台打印请求文本 });发送表单格式post请求 //构造一个登录请求 const login…

atheros蓝牙设备驱动 小米_小米Air 13笔记本黑苹果WiFi蓝牙硬件改装方案二

该方案适合小米笔记本Air 13初代,适合小米笔记本PRO等型号,适合通用的预留有M.2 PCIE通道SSD卡槽的电脑。也是作者极力推荐的终极改造方案。总体方案: 使用笔记本主板上的M.2 nvme通道 SSD硬盘接口进行拓展。使用BCM943602CS专用的M.2[NGFF]转接卡进行改…