配置权限审计

权限审计是指对用户使用权限进行的操作进行审计。这些权限如下表:

权限列表

权限名称 权限含义
ALTER SCHEMA 修改模式
ALTER USER 修改用户
CREATE ROLE 创建角色
CREATE SCHEMA 创建模式
CREATE USER 创建用户
DBA DBA用户拥有的所有权限
DROP ROLE 删除角色
DROP SCHEMA 删除模式
DROP USER 删除用户
GRANT ROLE 把角色授予用户
REVOKE ROLE 把角色从用户处收回

语法

  • 配置权限审计(需要以系统审计管理员身份执行)

    audit_privileges ::=

  • 取消权限审计配置(需要以系统审计管理员身份执行)

    noaudit_privileges ::=

参数

system_priv

表示某一权限的名称,参见表 41 权限列表。

DBA

表示系统管理员所拥有的所有权限,与对角色的审计类似。由于在神通数据库中,系统管理员拥有除了审计之外的所有权限,所以AUDIT PRIVILEGES DBA相当于语句审计中的AUDIT ALL。

ALL

所有权限,参见表 41 权限列表。

WHENEVER [ NOT ] SUCCESSFUL

可选项,表示审计模式,当不指定时,表示对执行成功和执行失败的权限语句都要审计。
  • 当其中不指定NOT关键字时,表示只审计执行成功的权限语句;
  • 当指定NOT关键字时表示只审计执行失败的权限语句。

相关视图

神通数据库中提供了权限审计配置视图 V_SYS_PRIVAUDCONF, 可以查看该视图的内容来了解当前的权限审计配置情况。

权限审计配置视图中记录的内容如下:

  • CONFID

配置ID(系统分配)。

  • PRIV_NAME

表示要审计的权限的名称。

  • MODE

表示本权限审计配置记录的审计模式:'s'表示只审计执行成功的、'f'表示只审计执行失败,'a'表示两者都审计。

示例

示例1: 审计用户的成功修改

--  连接 sysaudit 用户
CONNECT sysaudit/szoscar55;

--  开启审计
start audit;
clean audit configuration;


--  审计用户的成功修改
AUDIT PRIVILEGES ALTER USER WHENEVER SUCCESSFUL;

--  查看权限审计配置视图
SELECT PRIV_NAME, MODE FROM V_SYS_PRIVAUDCONF;
PRIV_NAME(name)      |MODE("CHAR")      |
---------------------------------------
ALTER USER           |s                 |
总数目:1

--  关闭审计
drop audit;

--  删除审计配置
clean audit configuration;

示例2: 审计所有的权限

--  连接 sysaudit 用户
CONNECT sysaudit/szoscar55;

--  开启审计
start audit;
clean audit configuration;


--  审计所有的权限
AUDIT PRIVILEGES ALL;

--  查看权限审计配置视图
SELECT PRIV_NAME, MODE FROM V_SYS_PRIVAUDCONF order BY PRIV_NAME;
PRIV_NAME(name)      |MODE("CHAR")      |
---------------------------------------
ALTER SCHEMA         |a                 |
---------------------------------------
ALTER USER           |a                 |
---------------------------------------
CREATE ROLE          |a                 |
---------------------------------------
CREATE SCHEMA        |a                 |
---------------------------------------
CREATE USER          |a                 |
---------------------------------------
DROP ROLE            |a                 |
---------------------------------------
DROP SCHEMA          |a                 |
---------------------------------------
DROP USER            |a                 |
---------------------------------------
GRANT ROLE           |a                 |
---------------------------------------
REVOKE ROLE          |a                 |
总数目:10

--  关闭审计
drop audit;

--  删除审计配置
clean audit configuration;