ITPub博客

首页 > 数据库 > Oracle > 记一次ORA-24247错误

记一次ORA-24247错误

原创 Oracle 作者:qqmengxue 时间:2012-08-16 12:01:52 0 删除 编辑

在oracle11gR2里发送邮件的时候报错:

ORA-24247: 网络访问被访问控制列表 (ACL) 拒绝
ORA-06512: 在 "SYS.PROCSENDEMAIL", line 730
ORA-06512: 在 "SC.ISC_UTIL", line 452
ORA-06512: 在 line 1

这是因为Oracle 数据库 11g有一个新的解决方案:您可以将执行权限程序包授予任何人,但要控制他们可以调用的资源。例如,utl_tcp 可限制为仅调用几个 IP地址,这种机制称为访问控制列表 (ACL)。如果主机在 ACL 中,用户可以在 utl_tcp 中使用;但是仅仅拥有对 utl_tcp的执行权限是不够的。因此,恶意进程不可能取代 utl_tcp 程序包和建立非法连接。

[@more@]

解决步骤:

1、创建一个 ACL:

begin
dbms_network_acl_admin.create_acl (
acl => 'NEWACL.xml',
description => 'news',
principal => 'CONNECT',
is_grant => TRUE,
privilege => 'connect',
start_date => null,
end_date => null
);
end;

2、为该 ACL 增加一个权限

begin
dbms_network_acl_admin.add_privilege (
acl => 'NEWACL.xml',
principal => 'SC',
is_grant => TRUE,
privilege => 'connect',
start_date => null,
end_date => null);
end;

3、添加主机:

begin
dbms_network_acl_admin.assign_acl (
acl => 'NEWACL.xml',
host => '*',
lower_port => 1,
upper_port => 1000);
end;

4、问题解决

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10130206/viewspace-1059192/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-03-26

  • 博文量
    169
  • 访问量
    549066