1 审计(Audit)用于监视用户所执行的数据库操作,并且oracle会将审计跟踪结果存放到OS文件或数据库中
2 激活审计
①查看审计参数
sql>show parameter audit_sys_operations;
sql>show parameter audit_trail
②激活审计
sql>alter system set audit_sys_operations=true scope=spfile;
sql>alter system set audit_trail=db scope=spfile;
修改完后需要重启数据库使参数生效
sql>startup force;
3 定义审计的表
通过定义审计的表可以很方便的知道这些表进行了哪些增删改的操作
例:定义审计bankuser的emp表
sql>execute dbms_fga.add_policy(
object_schema=>'bankuser',
object_name=>'emp',
policy_name=>'chk_emp',
statement_types=>'insert,update,delete');
4 授权普通用户可以查看存储审计信息的表
sql>grant select on dba_fga_audit_trail to bankuser;
5 查看审计表对emp表进行的审计
首先需要在emp表上进行增删改操作
然后使用如下语句查询审计表中的信息
sql>select t.timestamp,t.sql_text from sys.dba_fga_audit_trail f;
6 取消审计
审计会消耗一定的数据库资源和磁盘空间
例:取消对emp表的审计
sql>execute dbms_fga.drop_policy(object_schema=>'bankuser',object_name=>'emp',policy_name='chk_emp');