oracle的用户权限有哪些

来自:互联网
时间:2022-05-27
阅读:

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 用户;

返回顶部
顶部