oracle审计功能的使用
一、orecle审计简介
用于监视用户所执行的数据库操作(insert、update、delete),默认情况下审计未开启,审计记录存储在系统表空间中。 sys.aud$表中,主要的字段如下:| 字段 | 注释 |
|---|---|
| username | 登录的用户 |
| userhost | 登录的主机 |
| timestamp | 时间戳 |
| owner | 操作表的所有者 |
| obj$name | 操作的表 |
| action$name | 做了什么动作 |
| sqltext | 具体的SQL |
| sqlbind | 回退事务sql |
二、审计级别
1.语句审计:按照语句类型审计SQL语句。
2.权限审计:审计系统权限。
3.模式对象审计:审计特定模式对象上运行的特定语句。(insert,update,delete)
4.细粒度的审计:根据访问对象的内容来审计表访问和权限。(特定字段的值)
三、使用步骤
1.查看是否开启审计功能
进入sqlplus命令窗口,输入show parameter audit;
如果audit_sys_operations=false则表示未开启审计。如下图:

2.开启审计功能
执行如下语句开启审计
1.alter system set audit_sys_operations=TRUE scope=spfile;
2.alter system set audit_trail=db,extended scope=spfile;
注(audit_trail=extended时sys.aud$的sqltext和sqlbind字段记录sql语句,否则的话默认CLOB)

3.重启数据库
shutdown immediate;
startup;
4.再次查看是否开启
输入show parameter audit;
5.查看数据库是否存在sys.aud$表
select * from sys.aud$;
如果表不存在则需要安装,执行如下语句即可
SQL>@$ORACLE_HOME/rdbms/admin/cataudit.sql
四、注意
1.开启审计后sys.aud$表的数据会占用oracle的system空间,影响效率。
2.降低影响效率:
①审计表默认安装在system表空间,可将相关表迁移到其他表空间。
②可以清除sys.aud$表的数据。
③可以扩大system空间.
本文介绍Oracle数据库的审计功能,包括其用途、不同级别的审计设置、如何启用及配置审计功能,并提供注意事项以帮助优化系统性能。
202

被折叠的 条评论
为什么被折叠?



