Oracle系统权限和角色权限

数据库 Oracle
Oracle权限允许用户访问属于其它用户的对象或执行程序,下文对系统权限、角色和角色权限作了详细的说明,供您参考学习。

Oracle系统权限和角色权限都对用户的权限作了相应的限制,这也在一定程度上保护了数据库的访问安全。下面就让我们来一起了解一下。

Oracle系统权限

Oracle系统权限需要授予者有进行系统级活动的能力,如连接数据库,更改用户会话、建立表或建立用户等等。你可以在数据字典视图SYSTEM_PRIVILEGE_MAP上获得完整的系统权限。

对象权限和Oracle系统权限都通过GRANT语句授予用户或角色。需要注意的是在授予对象权限时语句应该是WITH GRANT OPTION子句,但在授予系统权象时语句是WITH ADMIN OPTION,所以在你试图授予系统权限时,使用语句WITH GRANT OPTION系统会报告一个错误:ONLY ADMIN OPTION can be specified。要特别注意这个语法和错误信息。

角色和角色权限

角色权限就是将属于用户的权限授予一个角色。任何权限都可以授予给一个角色。授予系统权限给被授予者必须使用WITH_ADMIN_OPTION子句,在会话期间通过SET ROLE语句授予或撤销角色权限。

然而,角色权限不能依靠存储在SQL中的权限。如果函数、程序、包、触发器或者方法使用另一个计划拥有的对象,那么就必须直接给对象的拥有者授权,这是因为权限不会在会话之间改变。

授予和撤销权限

给用户或者角色授予权限使用GRANT 语句,GRANT语句的语法如下:

GRANT ROLE(或system privilege) TO user(role,Public) WITH ADMIN OPTION(可选)

对象权限被授予 WITH GRANT OPTION

 

 

【编辑推荐】

Oracle批量赋权的实现

教您如何在oracle中存图片

oracle树查询的实现

oracle查询当前时间的实现

带您了解Oracle层次查询

责任编辑:段燃 来源: 互联网
相关推荐

2010-10-28 14:02:00

oracle conn

2009-10-27 18:01:46

2009-10-22 16:53:08

2018-05-03 10:33:14

数据库MySQL 8.0角色管理

2010-10-28 11:24:05

oracle用户权限

2010-10-28 10:54:46

oracle对象权限

2010-04-09 17:35:22

2011-04-13 09:53:20

2011-08-02 16:44:00

Oracle数据库角色权限默认表空间

2011-07-14 14:00:52

SQL Server固定数据库角色

2010-05-10 14:04:01

Oracle系统用户权

2010-10-28 13:07:56

Oracle syst

2010-10-29 10:46:23

Oracle超级用户

2011-03-25 10:43:31

Oracle系统用户权限赋予

2024-05-28 00:30:00

Python装饰器

2010-04-27 14:55:26

Oracle系统

2009-07-19 10:06:12

2010-10-28 11:29:18

ORACLE用户权限

2009-10-27 17:39:39

Oracle用户权限

2009-10-29 15:56:12

Oracle用户权限视
点赞
收藏

51CTO技术栈公众号