审计 audit
用于记录用户对数据库的操作
语句审计(statement audit)、权限审计(privilege audit)、对象审计(object audit)
[@more@]
审计的参数
show parameter audit
①audit_trail = os / db /none
os:审计记录存于操作系统中
db:审计记录存于数据库的相关表中
none: 不做审计
②audit_sys_operations = true / false(默认)
当为true时,sys用户的操作将被记录,windowns平台记录于事件管理中,linux / unix平台记录与audit_file_dest参数指定的文件中
1.select * from aud$
查询审计内容 包括审计sid 审计用户 动作号 时间等信息
2.select * from audit_actions
查询审计动作号和审计动作内容
3.select * from dba_stmt_audit_opts
查询用户开启了那些语句审计
4.select * from dba_priv_audit_opts
查询用户开启了哪些权限审计
5.select * from dba_obj_audit_opts
查询用户开启了哪些对象审计
6.audit table by test审计用户test对表的操作(语句审计)
7.audit all by test审计用户test所有的系统权限(权限审计)
8.audit all on abc
审计表abc上的所有操作(对象审计)
9.audit all on default
审计对所有对象的操作(只对之后创建的对象生效)
此语句执行后,若用noaudit 取消审计,其所审计的内容仍然进行审计,必须每个对象都使用noaudit 取消审计。
10.audit not exist
审计不存在(用户访问不存在的表进行审计)
审计选项
by access / by session :by access 每一个被审计的操作都会生成一条audit trail。 by session,一个会话里面同类型的操作只会生成一条audit trail。 默认为by session。