#系统权限管理

# 系统权限的作用

系统权限是一类可支持执行某种系统级操作的权限,可能作用于对象,也可能作用于数据库级别的操作。

通过DBA_SYS_PRIVS视图可查看当前系统中所有授权的系统权限信息。

系统权限的功能十分广泛,请慎重授权,保证被授权者是可信的用户或角色。

# 系统管理类系统权限

权限名称 描述
ALL PRIVILEGES 所有的系统权限
数据库与会话
ALTER SYSTEM 更改system级别参数及设置
ALTER DATABASE 更改database级别参数及设置
ALTER SESSION 更改session级别参数及设置
CREATE SESSION 用户登录
AUDIT SYSTEM 创建、修改、使能、去使能、删除审计策略
表空间
CREATE TABLESPACE 创建表空间
ALTER TABLESPACE 修改表空间属性
DROP TABLESPACE 删除表空间

# 安全管理类系统权限

权限名称 描述
权限管理
GRANT ANY PRIVILEGE 可以GRANT任意系统权限
GRANT ANY OBJECT PRIVILEGE 1. 可以GRANT任意对象权限,以代替对象owner的形式 2. 可以代替对象owner,发起revoke对象权限操作
GRANT ANY ROLE 可以GRANT任意角色
用户与角色
CREATE USER 创建用户
ALTER USER 更改用户各类属性
DROP USER 删除用户
CREATE ROLE 创建用户自定义角色
DROP ANY ROLE 删除用户自定义角色

# 对象操作类系统权限

权限名称 描述
INSERT ANY TABLE 对数据库中(sys schema除外)任意表插入数据
SELECT ANY TABLE 对数据库中(sys schema除外)任意表、视图、动态视图、物化视图发起查询;动态视图暂不受限
UPDATE ANY TABLE 对数据库中(sys schema除外)任意表更新数据
DELETE ANY TABLE 对数据库中(sys schema除外)任意表进行删除数据
READ ANY TABLE 对数据库中(sys schema除外)任意表进行查询,但不能加锁查询
CREATE TABLE 在用户自己的schema下创建表
CREATE ANY TABLE 在任意schema下创建表(sys schema除外)
ALTER ANY TABLE 对数据库中任意表发起ALTER操作(sys schema除外)
DROP ANY TABLE 删除数据库中任意表定义(sys schema除外)
FLASHBACK ANY TABLE 对数据库中任意表发起闪回查询(sys schema除外)
COMMENT ANY TABLE 对数据库中任意表进行注释(sys schema除外)
索引
CREATE ANY INDEX 对数据库中任意表创建索引(sys schema除外)
ALTER ANY INDEX 对数据库中任意索引修改属性(sys schema除外)
DROP ANY INDEX 删除数据库中任意索引(sys schema除外)
序列
CREATE SEQUENCE 在用户自己的schema下创建sequence
CREATE ANY SEQUENCE 在任意schema下创建sequence(sys schema除外)
ALTER ANY SEQUENCE 对数据库中任意sequence修改属性(sys schema除外)
DROP ANY SEQUENCE 删除数据库中任意sequence(sys schema除外)
SELECT ANY SEQUENCE 对数据库中任意sequence发起查询(sys schema除外)
同义词
CREATE SYNONYM 在用户自己的schema下创建私有synonym
CREATE ANY SYNONYM 在任意schema下创建私有synonym(sys schema除外)
CREATE PUBLIC SYNONYM 创建public synonym
DROP ANY SYNONYM 删除任意私有synonym(sys schema除外)
DROP PUBLIC SYNONYM 删除public synonym
视图
CREATE VIEW 在用户自己的schema下创建视图
CREATE ANY VIEW 在任意schema下创建视图(sys schema除外)
DROP ANY VIEW 删除任意视图
自定义类型
CREATE TYPE 在用户自己的schema下创建自定义类型
CREATE ANY TYPE 在任意schema下创建自定义类型(sys schema除外)
ALTER ANY TYPE 修改任意schema下自定义类型的属性(sys schema除外)
DROP ANY TYPE 删除任意schema下自定义类型(sys schema除外)
EXECUTE ANY TYPE 执行任意自定义类型(sys schema除外)
UNDER ANY TYPE 在非最终的OBJECT类型下创建子类型。
存储过程
CREATE PROCEDURE 在用户自己的schema下创建过程体或函数
CREATE ANY PROCEDURE 在任意schema下创建过程体或函数(sys schema除外)
ALTER ANY PROCEDURE 修改任意schema下过程体或函数的属性(sys schema除外)
DROP ANY PROCEDURE 删除任意过程体或函数(sys schema除外)
EXECUTE ANY PROCEDURE 执行任意过程体或函数(sys schema除外)
触发器
CREATE TRIGGER 在用户自己的schema下创建触发器
CREATE ANY TRIGGER 在任意schema下创建触发器(sys schema除外)
ALTER ANY TRIGGER 修改任意schema下触发器的属性(sys schema除外)
DROP ANY TRIGGER 删除任意schema下触发器(sys schema除外)
ADMINISTER DATABASE TRIGGER 管理数据库级别触发器
自定义库
CREATE LIBRARY 在用户自己的schema下创建自定义库
CREATE ANY LIBRARY 在任意schema下创建自定义库
DROP ANY LIBRARY 删除任意自定义库(sys schema除外)
EXECUTE ANY LIBRARY 创建外置UDF时使用任意自定义库(sys schema除外)

# 其他系统权限

权限名称 描述
存储纲要
CREATE ANY OUTLINE 创建任意存储纲要
ALTER ANY OUTLINE 修改任意存储纲要的属性
DROP ANY OUTLINE 删除任意存储纲要
统计信息
ANALYZE ANY 执行高级包下统计信息相关存储过程
导入权限:
FILE 可通过utl_file或load data对文件进行操作