ORA-24247: 网络访问被访问控制列表 (ACL) 拒绝

Posted moonsoft

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ORA-24247: 网络访问被访问控制列表 (ACL) 拒绝相关的知识,希望对你有一定的参考价值。

连接到数据库 sjcl测试库。
执行 PL/SQL: CALL DBMS_DEBUG_JDWP.CONNECT_TCP( ‘10.128.29.130‘, ‘58735‘ )
ORA-24247: 网络访问被访问控制列表 (ACL) 拒绝
ORA-06512: 在 "SYS.DBMS_DEBUG_JDWP", line 68
ORA-06512: 在 line 1
进程已退出。
从数据库 sjcl测试库 断开连接。

技术图片

 

 

Oracle12c中通过SQL Developer工具debug存储过程时的错误: ORA-24247

调试Oracle的存储过程时,需要数据库管理员给用户赋debug权限

GRANT debug any procedure, debug connect session TOUSERXXX;

但是在Oracle12c中, 如果仅有此权限, 在debug时还会报如下错误:
Connecting to the database USERXXX.
Executing PL/SQL: ALTER SESSION SET PLSQL_DEBUG=TRUE
Executing PL/SQL: CALL DBMS_DEBUG_JDWP.CONNECT_TCP( ‘192.168.10.101’, ‘61116’ )
ORA-24247: network access denied by access control list (ACL)
ORA-06512: at “SYS.DBMS_DEBUG_JDWP”, line 68
ORA-06512: at line 1

Process exited.
Disconnecting from the database USERXXX.

从Oracle 12c开始,如果通过基于JDWP(Java Debug Wire Protocol)协议的调试器(如SQL Developer, JDeveloper)调试PL/SQL存储过程, 需要给用户赋予JDWP ACL权限,允许其通过某台主机用调试工具连接数据库, 示例如下:

 

BEGIN
DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE
(
host => ‘192.168.10.101’, –指定host
lower_port => null,
upper_port => null,
ace => xs$ace_type(privilege_list => xs$name_list(‘jdwp’),
principal_name => ‘USERXXX’, –指定user
principal_type => xs_acl.ptype_db)
);
END;

登录SYS用户 执行以上语句重新连接即可。

 

摘自:http://www.ifanxu.com/oracle-debug-ora-24247/

以上是关于ORA-24247: 网络访问被访问控制列表 (ACL) 拒绝的主要内容,如果未能解决你的问题,请参考以下文章

Oracle 11g ACL访问控制(11g的新玩意)

Oracle Database 11g 中的访问控制列表 (ACL) 拒绝网络访问

使用 APEX Oracle 11.2 发送电子邮件的 ACL

ACL访问控制列表——标准IP访问列表(理论+实验)

ACL标准访问控制列表

访问控制列表