数据库全局审计
在数据库指定对库级操作行为的审计功能称为数据库全局审计,全局审计支持的对象有:数据库、数据库连接。当审计对象为数据库时,表示对数据库的创建、修改、删除操作记录;审计对象为连接时,表示对一切连接数据库的行为进行记载。
审计选项 | 审计的数据库操作 | 说明 |
---|---|---|
CONNECT | - | 数据库连接操作 |
DATABASE | - | 创建/删除库操作 |
语法格式
sql
{AUDIT | NOAUDIT} { TYPE } [BY USER_NAME] [TO FILE] [WHENEVER SUCCESSFUL | WHENEVER NO SUCCESSFUL]
参数说明
设置审计:AUDIT设置审计项;NOAUDIT取消审计项。
TYPE:全局审计选项,即表1 数据库全局审计选项中的第一列。
USER_NAME:用户名。审计指定用户的操作,若未指定用户则表示对当前库下所有用户操作进行审计。
WHENEVER:审计时机,可选的取值如下,若不加则表示无论成功与否都作记载(注:新版本取消审计项不再支持WHENEVER子句)。
- SUCCESSFUL:操作成功时
- NO SUCCESSFUL:操作失败时
TO FILE:若省略TO FILE则表示使用表模式进行审计,若选取 TO FILE 则表示使用日志模式进行审计;同一审计项只能选择其中一种模式,如需修改审计模式则根据审计语法重新执行一次设置审计项即可。
应用示例
- 审计 SYSDBA 用户建立数据库连接成功的操作sql
SQL> AUDIT CONNECT BY SYSDBA WHENEVER SUCCESSFUL;
- 审计 SYSDBA 用户建立数据库连接成功的操作修改为日志模式sql
SQL> AUDIT CONNECT BY SYSDBA TO FILE WHENEVER SUCCESSFUL;
- 取消审计 SYSDBA 用户建立数据库连接成功的操作sql
SQL> NOAUDIT CONNECT BY SYSDBA;