Oracle入门(八)之权限

xiaoxiao2021-03-01  10

定义:控制用户在数据库中所能进行的操作权限

分类:系统权限和对象权限

一、系统权限

系统权限(system Privilege):允许执行一组特定的命令

CREATE SESSION 创建会话CREATE/DROP USER 创建用户CREATE/DROP VIEW 创建视图CREATE/DROP SEQUENCE 创建序列CREATE/DROP SYNONYM 创建同名对象CREATE/DROP TABLE 在用户模式中创建表

 With admin option 进行系统权限传递

二、对象权限对象权限(objects Privilege) : 赋予在某一具体数据对象的操作能力(1) 9种对象权限:Select 、Update、Delete、Insert、Execute、Index、reference、Alter、Read

(2)对象权限传递

With Grant Option

被授予With Grant Option对象权限的用户,可将该对象权限授予其他用户。

三、授予权限的方法 grant privilege [, privilege...] to user [, user|role, public...] [with admin option]; 1)直接授予用户: 

grant create session to annie; 2)先将权限授予角色,再将角色授予用户

Create role teach; grant select on class to teach; grant teach to annie;

例子:

grant create session to test; Grant connect,resource to test; Grant dba to test;

四、权限回收授予的对象权限和系统权限可以通过Revoke语句收回例子: revoke 权限 from test ;--回收系统权限

 revoke select on class from test ; --回收对象权限

注意:– 一个用户被多用户授予权限后,其中一个用户收回权限,不影响其他用户授予的权限– 收回With grant option 或 With admin option,要首先回收相应的权限,再重新授予该权限而不再授予With grantoption 或 With admin option– 传递权限With admin option给其他用后,如果此系统权限被回收,其他用户仍然拥有该系统权限– 传递权限With grant option给其他用后,如果此对象权限被回收,其他用户该对象权限也被收回

五、权限查询查询当前用户的系统权限:SELECT * FROM session_privs;视图USER_TAB_Privs:对象权限

转载请注明原文地址: https://www.6miu.com/read-3350079.html

最新回复(0)