数据库之审计
因为任何系统的安全保护措施都不是完美无缺的,蓄意盗窃,破坏数据的人总是想方设法打破控制,审计功能把用户对数据库的所有操作自动记录下来放入审计日记(audit log)中,审计员可以利用审计日志监控数据库的各种行为,重现导致数据库现状的一系列事件,找出非法存取数据的人,时间和内容等。
1.审计事件
服务器事件:审计数据库服务器发生的事件,包含数据库服务器的启动,停在,数据库服务器配置文件的重新加载。
系统权限:对系统用有的结构或模式对象进行操作的审计,要求该操作的权限是通过系统权限获得的。
语句事件:对sql语句,如ddl,dml,dql等。
模式对象事件:对特定模式对象上进行的select或dml操作的审计,模式对象包括表,视图,存储过程,函数等。模式对象不包括依附于表的索引,约束,触发器,分区表等。
2.审计功能
基本功能,提供多种审计查阅方式:基本的,可选的,有限的,等等。
提供多套审计规划,审计规则一般在数据库初始化时设定。
提供审计分析和报表功能。
审计日志管理功能,包括为防止审计员误删审计记录,审计日志必须转存后删除,对转储的审计记录文件提供完整性和保密性。
系统提供查询审计设置及审计记录信息的专门视图。
AUDIT语句和NOAUDIT语句
audit语句用来设置审计功能,noaudit语句则取消审计功能。
例如:对修改sc表结构或修改sc表数据操作进行审计。
audit alter,update
on sc;
取消对sc表的一切审计功能。
noaudit alter,update
on sc;