oracle的用户权限:1、系统权限,允许用户执行特定的数据库动作的权限,包括了创建表、索引、连接实例等等;2、对象权限,允许用户操作特定对象的权限,包括了读取视图、执行存储过程等等。
本教程操作环境:Windows10系统、Oracle 11g版、Dell G3电脑。
oracle的用户权限有哪些
系统权限: 允许用户执行特定的数据库动作,如创建表、创建索引、连接实例等(对用户而言)
对象权限: 允许用户操纵一些特定的对象,如读取视图,可更新某些列、执行存储过程等(是针对表或视图而言的)
1.系统权限
超过一百多种有效的权限(SELECT * FROM SYSTEM_PRIVILEGE_MAP查)
数据库管理员具有高级权限以完成管理任务,例如:
-
–创建新用户
-
–删除用户
-
–删除表
-
–备份表
系统权限分类:
-
DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。
-
RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。
-
CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。
-
对于普通用户:授予connect, resource权限。
-
对于DBA管理用户:授予connect,resource, dba权限。
a.常用的系统权限:
-
CREATE SESSION 创建会话
-
CREATE SEQUENCE 创建序列
-
CREATE SYNONYM 创建同名对象
-
CREATE TABLE 在用户模式中创建表
-
CREATE ANY TABLE 在任何模式中创建表
-
DROP TABLE 在用户模式中删除表
-
DROP ANY TABLE 在任何模式中删除表
-
CREATE PROCEDURE 创建存储过程
-
EXECUTE ANY PROCEDURE 执行任何模式的存储过程
-
CREATE USER 创建用户
-
DROP USER 删除用户
-
CREATE VIEW 创建视图
2.对象权限
不同的对象具有不同的对象权限
对象的拥有者拥有所有权限
对象的拥有者可以向外分配权限
ORACLE一共有种对象权限
对象权限 表 视图 序列 过程
-
修改(alter)
-
删除(delete)
-
执行(execute)
-
索引(index)
-
插入(insert)
-
关联(references)
-
选择(select)
-
更新(update)
另外,connect和resource的权限如下所示
CONNECT角色:仅具有创建SESSION的权限
RESOURCE角色:仅具有创建CLUSTER,INDEXTYPE,OPERATOR,PROCEDEURE,SEQUENCE,TABLE,TRIGGER,TYPE的权限。
同时,当把ORACLE resource角色授予一个user的时候,不但会授予ORACLE resource角色本身的权限,而且还有unlimited tablespace权限,但是,当把resource授予一个role时,就不会授予unlimited tablespace权限。
确实没有创建视图的权限,由此看来如果需要创建视图权限,只能单独授权:
GRANT CREATE VIEW TO 用户;
推荐教程:《Oracle视频教程》