ORA-24247问题解决
错误信息:
scott@ORCL> select utl_http.request('www.baidu.com') from dual;
select utl_http.request('www.baidu.com') from dual
*
第 1 行出现错误:
ORA-29273: HTTP 请求失败
ORA-06512: 在 "SYS.UTL_HTTP", line 1722
ORA-24247: 网络访问被访问控制列表 (ACL) 拒绝
ORA-06512: 在 line 1
1、首先,创建一个 ACL:
BEGIN
dbms_network_acl_admin.create_acl(acl => 'httprequestpermission.xml',
DESCRIPTION => 'Normal Access',
principal => 'CONNECT',
is_grant => TRUE,
PRIVILEGE => 'connect',
start_date => NULL,
end_date => NULL);
END;此处,参数 principal => ‘CONNECT‘ 表示该 ACL 适用于 CONNECT 角色。您可以在此处定义一个用户或角色。该 ACL 是作为一个httprequestpermission.xml文件创建的。
2、创建完毕后,您可以进行检查以确保该 ACL 已增加:
SELECT any_path
FROM resource_view
WHERE any_path like ‘/sys/acls/%.xml‘;
输出结果如下:
ANY_PATH
/sys/acls/ANONYMOUS/ANONYMOUS7374c7db65774bb19286fbd57c8aa08d_acl.xml
/sys/acls/OLAP_XS_ADMIN/OLAP_XS_ADMIN2a6ce0de601f4cd6ad84d2f9ef8d4f2_acl.xml
/sys/acls/OLAP_XS_ADMIN/OLAP_XS_ADMIN2e9f0e58c864be499b7fcf3ab6f4877_acl.xml
/sys/acls/OLAP_XS_ADMIN/OLAP_XS_ADMIN31e66de0a358445c96b060337e8039a1_acl.xml
/sys/acls/OLAP_XS_ADMIN/OLAP_XS_ADMINa121d072af9640a5a1ead75f3595f42_acl.xml
/sys/acls/OLAP_XS_ADMIN/OLAP_XS_ADMINe5b5db8c76b94aed83a423d7b36dd6fc_acl.xml
/sys/acls/all_all_acl.xml
/sys/acls/all_owner_acl.xml
/sys/acls/bootstrap_acl.xml
/sys/acls/email_server_permissions.xml
/sys/acls/httprequestpermission.xml
/sys/acls/ro_all_acl.xml
/sys/acls/ro_anonymous_acl.xml
注意输出结果中的最后一行,它显示您刚刚创建的 ACL。
3、接下来,为该 ACL 增加一个权限:
在本示例中,您将尝试将该 ACL 局限于用户 SCOTT。您还可以定义开始和结束日期。
begin
dbms_network_acl_admin.add_privilege(acl => 'httprequestpermission.xml',
principal => 'SCOTT',
is_grant => TRUE,
privilege => 'connect',
start_date => null,
end_date => null);
end;
4、分配将受该 ACL 制约的主机以及其他详细信息:
begin
dbms_network_acl_admin.assign_acl(acl => 'httprequestpermission.xml',
host => 'www.baidu.com',
lower_port => 80,
upper_port => NULL);
end;
5 、在本示例中,您指定“用户 SCOTT 只能调用主机 www.baidu.com,并能使用 80 端口。”现在让我们来试一下:
scott@ORCL> select utl_http.request('www.baidu.com') from dual;
UTL_HTTP.REQUEST('WWW.BAIDU.COM')
--------------------------------------------------------------------------------
--------------------
<!DOCTYPE html><!--STATUS OK--><html><head><meta http-equiv="content-type" conte
nt="text/html;charse
t=utf-8"><link rel="dns-prefetch" href="//s1.bdstatic.com"/><link rel="dns-prefe
tch" href="//t1.baid
u.com"/><link rel="dns-prefetch" href="//t2.baidu.com"/><link rel="dns-prefetch"
href="//t3.baidu.co
m"/><link rel="dns-prefetch" href="//t10.baidu.com"/><link rel="dns-prefetch" hr
ef="//t11.baidu.com"
/><link rel="dns-prefetch" href="//t12.baidu.com"/><title>百度一下,你就知道</ti
tle><style >html,bod
y{height:100%}html{overflow-y:auto}#wrapper{position:relative;_position:;min-hei
ght:100%}#content{pa
---------------...........................
但该规则仅适用于 www.baidu.com。如果您调用其他 Web 站点,调用将失败,错误原因仍为ORA-24247。这是最细粒度水平上的安全性。如果您的企业需要连接到主机www.baidu.com,您可以在允许该连接的同时阻止对任何其他主机的访问,从而防止恶意用户使用该功能来访问所有其他的主机。
6、要了解 ACL 的详细信息,请查询 DBA_NETWORK_ACLS 视图:
--------------------以SYSDBA身份--------------------------------
SELECT acl,
principal,
privilege,
is_grant,
TO_CHAR(start_date, 'DD-MON-YYYY') AS start_date,
TO_CHAR(end_date, 'DD-MON-YYYY') AS end_date
FROM dba_network_acl_privileges;
/sys/acls/email_server_permissions.xml SCOTT connect true
/sys/acls/httprequestpermission.xml CONNECT connect true
/sys/acls/httprequestpermission.xml SCOTT connect true
-----------------------------
Dylan presents.
ORA-24247问题解决的更多相关文章
- oracle: listener.ora 、sqlnet.ora 、tnsnames.ora的配置及例子
1.解决问题:TNS或者数据库不能登录. 最简单有效方法:使用oracle系统提供的工具 netca 配置(把原来的删除掉重新配置) $netca 2.然而,仍有疑问:如何指定'l ...
- 【Oracle】三个配置文件tnsnames-listener-sqlnet介绍【转】
转自:博客园-oracle: listener.ora .sqlnet.ora .tnsnames.ora的配置及例子 介绍三个配置文件 1)listener.ora 2)sqlnet.ora 3)t ...
- Oracle 错误总结及问题解决 ORA
参考地址 ORA-00001: 违反唯一约束条件 (.)错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常.ORA-00017: 请求会话以设置跟踪事件ORA-00018: 超出最大会话数O ...
- oracle安装完成后目录中不论有没有tnsnames.ora和listener.ora文件 PLSQL都能连上的问题解决方法
今天遇到这个问题了,发现listener.ora文件和tnsnames.ora文件在Net Work文件夹下没有,正常情况下安装完oracle或者是oracle Client是会有的,但是在Net M ...
- oracle服务起不来以及无法监听问题解决
改问题是在搭建起一个很早之前的数据库的时候碰见的,虽然这个问题网上已经有很多相关的帖子,但因最近碰见多次这样的问题,特此简单记录: 1.最开始碰见的问题是:The listener supports ...
- 【原创】ORACLE常见使用问题解决
ORACLE常见使用问题解决 一.安装了oracle客户端后,发现plsql客户端找不到之前已经配置过的TNS连接信息 或许大家再使用ORACLE软件的过程中,经常会遇到这样的问题: 问题现象描述: ...
- oracle数据库登录连接很慢;kettle连接oracle 报 IO 错误,socket time out 问题解决记录
问题描述: 1:oracle数据库连接登陆时突然变得很慢:sqldeveloper链接数据库很慢: 2:Kettle-spoon etl程序访问数据库,任务执行时报 :数据库连接 IO错误 :Sock ...
- oracle启动 init.ora spfile pfile[转]
昨天晚上快下班的时候,公司数据库突然堵住了,一个buf表中累计了20多W的数据提取不出来,改了程序,效果不明显.因为之前有一次也重启过oracle,所以这次还是想把oracle重启一下,因为那些数据都 ...
- 计算机改名引发的ORA
近期上班时,由于开机时老是提示" 局域网出现计算机重名冲突",于是把计算机名字给改了,从PC2010081312zeo改为了CXBIKKKKKKK,结果第二天来的时候,用PL/SQ ...
- oracle错误(ORA:12154 ORA:01034 和 ORA:27101 ORA-18008 ORA-01081)
按照正常操作流程,启动项目,发现项目报错,原因是连接不上oracle数据库, PLSQL连接时报错,错误码 ORA:12154 无法解析指定的连接标识符 第一次,遇到这个错误,在网上找了资料都是需要 ...
随机推荐
- Go-基本类型-int-float-bool-byte-rune
- 幻兽帕鲁 Palworld 私有服务器一键部署教程
<幻兽帕鲁>(日语:パルワールド,英语:Palworld) 是由日本开发商 Pocket Pair 推出的一款动作冒险生存游戏.游戏设定在一个由类似动物的生物 "帕鲁" ...
- ARMv8.0下duckdb的安装与编译过程-解决 Failed to allocate block of 2048 bytes
ARMv8.0下duckdb的安装与编译过程-解决 Failed to allocate block of 2048 bytes 背景 duckdb 是一个很流行的单机版数据库引擎 同事下载了相关的预 ...
- [转帖]《Linux性能优化实战》笔记(20)—— 使用 tcpdump 和 Wireshark 分析网络流量
tcpdump 和 Wireshark 是最常用的网络抓包和分析工具,更是分析网络性能必不可少的利器. tcpdump 仅支持命令行格式使用,常用在服务器中抓取和分析网络包.Wireshark 除了可 ...
- [转帖]Kafka-LEO和HW概念及更新流程
https://www.cnblogs.com/youngchaolin/p/12641463.html 目录 LEO&HW基本概念 LEO&HW更新流程 LEO HW 更新流程示例分 ...
- [转帖]解决jmeter请求响应结果乱码的问题
如下图所示,请求百度接口的时候,发现返回的信息里面中文是乱码 这个时候我们只需要改一下jmeter里的配置文件,设置响应结果的字符编码为UTF-8就行了. 进入jmeter安装目录/bin中,找到jm ...
- Linux时间戳转换成易读格式的方法
背景 最近一直在学习Redis相关的知识. 其中遇到了一个redis monitor的命令 但是这里有一个问题是: 原生命令查询出来的时间是Unix时间戳格式的. 不太好发现查看与进行对照. 所以今天 ...
- 可持久化非确定状态AC自动分块维护线段平衡仙人掌优化最小费用最大流预处理混合图上莫比乌斯反演莫队带花舞蹈链并查集树状数组套主席树预处理动态DP分治FFT求多项式逆元对数函数的指数函数用可持久化并查集合并最小费用循环流上插头DP
P8946 - The Lost Symbol 这种类型的 dp 的特点就是大部分转移形如 \(f(i,j)\rightarrow f(i+1,j+1)\) 之类的,并且当以上转移出现时原数组被清空, ...
- vue3封装搜索表单组件
seacrch 表单完成的功能 1.根据配置json配置项自动生成表单 ok 2.是响应式的排版 ok 3.点击搜索按钮会向上抛出值 ok 4.点击重置按钮会自动清空数据,不需要父组件额外的处理 ok ...
- js计算两个时间相差多少分钟
<script> var str = "2020-02-04" console.log(str) console.log(str.replace(/-/g, " ...