0

0

Oracle ACL(Access Control List)

php中文网

php中文网

发布时间:2016-06-07 15:49:47

|

1277人浏览过

|

来源于php中文网

原创

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 Oracle ACL(Access Control List) 在oralce 11g中假如你想获取server的ip或者hostname,执行如下语句 1 2 3 SELECT utl_inaddr.get_host_address FROM dual; //获取IP SELECT utl_inaddr.get_host_na

欢迎进入oracle社区论坛,与200万技术人员互动交流 >>进入

  Oracle ACL(Access Control List)

  在oralce 11g中假如你想获取server的ip或者hostname,执行如下语句

1

2

3

SELECT utl_inaddr.get_host_address FROM dual;  //获取IP

  

SELECT  utl_inaddr.get_host_name FROM dual; //获取host 名字

  如果在oracle 9i中能够正常执行,但在11g中你可能会得到一个莫名其妙的错误提示:

  ORA-24247: network access denied by access control list(ACL)

  你可能马上想到是需要啥额外的权限,而我们平时赋予权限一般是grant XXX to user_name;但你找不到有啥跟ACL对应的权限.

  实际上这里确实需要额外权限,但赋予权限的方式相当变态,跟grant的方式太不一样了.

  细粒度访问网络服务

  为了更细致的控制网络权限,Oracle 11g中针对这么几个PL/SQL API(UTL_TCP, UTL_SMTP, UTL_MAIL, UTL_HTTP和 UTL_INADDR)的访问设置了单独的权限访问控制方式.

人民网AIGC-X
人民网AIGC-X

国内科研机构联合推出的AI生成内容检测工具

下载

  其中UTL_SMTP,UTL_MAIL是跟邮件相关的,比如你可以在触发器中设定当在某些表中做插入删除操作时就发个邮件知识某个负责人.

  赋予权限

  假如要给用户赋予访问上面提到的那些函数咋整呢? 要通过如下的一段pl/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

BEGIN

  

DBMS_NETWORK_ACL_ADMIN.CREATE_ACL(acl => 'abc.xml', --这个xml文件名字随便取的,但不同出现同名的情况

  

description => 'ACL list',

  

principal => 'ARWEN', --表示赋予权限给哪个用户

  

is_grant => true, --为true表示赋予权限,如果是false相当取消权限

  

privilege => 'connect');

  

DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(acl => 'abc.xml',

  

principal => 'ARWEN',

  

is_grant => true,

  

privilege => 'resolve');

  

DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL(acl => 'abc.xml',

  

host => 'Oracle_Host_name'); --因为那些网络操作的权限是针对某一个server的,所以这里是指定一台机器的名字

  

END;

  如果要删除上面的控制列表

1

2

3

4

5

BEGIN

  

DBMS_NETWORK_ACL_ADMIN.drop_acl ( acl => 'abc.xml');

  

END;

  删除这个列表,那用些列表赋予权限的那些用户自然也被取消相应的权限了.

Oracle ACL(Access Control List)

相关专题

更多
php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

PHP 高性能
PHP 高性能

本专题整合了PHP高性能相关教程大全,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

MySQL数据库报错常见问题及解决方法大全
MySQL数据库报错常见问题及解决方法大全

本专题整合了MySQL数据库报错常见问题及解决方法,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

PHP 文件上传
PHP 文件上传

本专题整合了PHP实现文件上传相关教程,阅读专题下面的文章了解更多详细内容。

5

2026.01.13

PHP缓存策略教程大全
PHP缓存策略教程大全

本专题整合了PHP缓存相关教程,阅读专题下面的文章了解更多详细内容。

3

2026.01.13

jQuery 正则表达式相关教程
jQuery 正则表达式相关教程

本专题整合了jQuery正则表达式相关教程大全,阅读专题下面的文章了解更多详细内容。

1

2026.01.13

交互式图表和动态图表教程汇总
交互式图表和动态图表教程汇总

本专题整合了交互式图表和动态图表的相关内容,阅读专题下面的文章了解更多详细内容。

15

2026.01.13

nginx配置文件详细教程
nginx配置文件详细教程

本专题整合了nginx配置文件相关教程详细汇总,阅读专题下面的文章了解更多详细内容。

4

2026.01.13

nginx部署php项目教程汇总
nginx部署php项目教程汇总

本专题整合了nginx部署php项目教程汇总,阅读专题下面的文章了解更多详细内容。

5

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
SQL 教程
SQL 教程

共61课时 | 3.4万人学习

Java 教程
Java 教程

共578课时 | 45.7万人学习

oracle知识库
oracle知识库

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号