关于Oracle用户权限的5个方面

数据库 Oracle
用户是用来连接数据库访问数据库。一个Oracle用户权限由系统权限和用户对象权限组成。本文针对这2个方面都有相应的介绍。

Oracle用户根据所被授予的权限分为系统权限和对象权限。这里我们主要介绍介绍创建角色、角色赋权、回收角色权限等方面。下面我们来一一进行解析。

一、创建Oracle用户

Create role clerk identified by bicentennial;
以上命令创建一个名为clerk的角色,他的密码为bicentennial,当角色被授予某个用户时,必须使用密码进行验证。如果不指定identified子句,则数据库使用not identified,这时激活角色不需要认证。

二、Oracle用户权限

1.授予角色系统权限和角色
如果要给某个角色授权,你必须需要具有以下权限:
1)如果要授予系统权限,你自已必须被授与此权限时,包括Admin Option或拥有GRANT ANY PRIVILEGE系统权限。
2)如果授与角色,你必须被授予与此角色时包括Admin Option或拥有GRANT ANY ROEL 系统角色。Grant create session to jward;

a)授予Admin Option
Grant new_dba to michal with admin option;
如果一个用户或角色被授权的同时指定with admin option子句,则有以下效果:
i.该用户或角色可以将此权限赋与任何其他用户,或从其他用户回收此权限。
ii.这个用户或角色可以将此权限的管理权传递给任何用户。
iii.被授予角色的用户可以修改或drop角色。

b)在赋权的同时创建用户
Oracle允许你在grant的同时创建一个新用户,如果你通过一个identified by子句指定一个密码,而用户名/密码不存在数据库中,一个新用户就将被创建。

c)Grant connect to ssmith identified by p1q2r3;

2.授予object角色
如果你要将某个object的权限授予某个用户,你必须符合以下条件:你拥有指定的object;你拥有GRANT ANY OBJECT PRIVELEGE系统权限;你被赋与此Object权限包括WITH GRANT OPTION。
Grant select,insert,delete om emp to jfee,tsmith;
Grant all on emp to jfee;
a)授予Grant Option
如你指定with grant option,被授权的用户将获得以下Oracle用户权限:
i被授权的用户可以授予任何用户此对像的权限
ii如果被授权的用户拥有Create view或Create any view系统权限,则用户可以在此表上创建一个视图,同时赋权给其他用户访问。

3.在列上授权
你可以在单独的列上授予用户插入、修改、删除权限:Grant insert (acct_no) on accounts to scott;

三、回收Oracle用户权限

1.回收系统权限
任何拥有指定系统权限的ADMIN OPTION或拥有权限管理权限的用户都可以从任何用户上回收指定权限Revoke create table from tsmith;
这里要注意,ADMIN OPTION不能作为权限单独回收。

2.回收Object权限
为了回收Object权限,必须符合以下条件:此权限是由你之前赋与用户或角色的;你拥有GRANT ANY OBJECT PRIVILEGE权限。

注意:一个拥有GRANT OPTION的用户,如果Object对像被回收,则所有由它赋权的用户的相应权限都将被回收
Revoke all on dept from human_resource;

四、赋权与回收的生效时间

关于系统权限或Object权限的赋权与回收都是立即生效的。将角色同授予某个用户或从用户回收将在下一次新建session时生效,除非使用Set指定。在session中,用户可以使用set role来改变role:Set role ckerk identified by bicentennial; 如果用户有密码则必须使用identified by 指定关闭所有角色Set role none。

五、指定用户缺省权限

当用户登陆时,oracle自动将用户缺省角色中的权限赋与用户。Alter user jane default role payclerk,pettycash

 【编辑推荐】

  1. 详解查看Oracle用户权限的七种方法
  2. 详解Oracle用户权限视图的使用
  3. Oracle用户权限及角色管理浅谈
  4. Oracle用户权限的创建及分配
  5. 浅析Oracle用户权限表的管理方法
责任编辑:王婧瑶 来源: 互联网
相关推荐

2017-06-01 15:58:42

Oracle数据库安全管理

2019-12-09 16:41:40

5G运营商韩国

2010-10-28 11:24:05

oracle用户权限

2009-11-02 15:15:43

Oracle授予用户权

2010-10-28 13:07:56

Oracle syst

2010-10-29 10:46:23

Oracle超级用户

2011-08-01 15:51:08

2009-10-27 17:39:39

Oracle用户权限

2009-10-29 15:56:12

Oracle用户权限视

2010-04-22 10:00:41

Oracle数据字典

2010-03-31 15:38:33

Oracle用户

2009-10-27 18:01:46

2010-10-28 11:29:18

ORACLE用户权限

2010-05-10 14:04:01

Oracle系统用户权

2010-04-21 13:10:53

Oracle用户权限

2009-10-21 14:27:12

Oracle用户权限分

2009-10-21 14:48:39

Oracle用户权限表

2013-05-02 09:06:23

Java性能Java

2011-03-25 10:43:31

Oracle系统用户权限赋予

2009-06-04 10:20:34

Hibernate持久化Java
点赞
收藏

51CTO技术栈公众号