Oracle10g审计

Oracle10g审计
===========================================================
要使用oracle的审计功能必须先设定初始化参数audit_trail

audit_trail 参数的值可以设置为以下几种:

1. NONE:不开启审计功能。
2. DB:开启审计功能,并将审计记录保存在数据库系统提供的审计视图内,要求用于审计功

能实现的视图已经创建。

Oracle10g审计要使用oracle的审计功能必须先设定初始化参数audit_trail

audit_trail 参数的值可以设置为以下几种:

1. NONE:不开启审计功能。
2. DB:开启审计功能,并将审计记录保存在数据库系统提供的审计视图内,要求用于审计功

能实现的视图已经创建。
3. OS:审计记录写入一个操作系统文件。
4. TRUE:与参数DB效果等同。
5. FALSE:不开启审计功能。

注意此参数不是一个动态参数,需要重启数据库才能生效.


Oracle10g审计比9i在功能上有了加强,9i当中你能看到是谁做的操作,但不能看到具体操作内

容,而10g倪补了这一点,例子如下:

用add_policy过程创建审计任务

begin
dbms_fga.add_policy (
object_schema => 'TEST',
object_name => 'T',
policy_name => 'ACCOUNTS_ACCESS',
audit_column => 'ID',
audit_condition => 'ID>1',
statement_types => 'UPDATE'
);
end;执行语句触发审计:

update t set name = 'aa' where id = 100

这样可以在DBA_FGA_AUDIT_TRAIL视图的SQL_TEXT字段中找到执行的语句


第二种审计方法是使用语句

例如:

想对用户gu的所有表的所有sql跟踪用如下语句

Audit table by gu by access;

想对表test的insert进行跟踪用如下语句

Audit insert on test by access


然后可以在DBA_AUDIT_TRAIL视图中查看审计信息

这种方法记录了事务的transactionid,通过和视图FLASHBACK_TRANSACTION_QUERY连接查询可

以知道记录中实际记录的是什么.

select start_scn, start_timestamp,
commit_scn, commit_timestamp, undo_change#, row_id, undo_sql
from flashback_transaction_query
where xid = '';
这两种方法都有记录操作的SCN,这可以通过”闪回”功能来找回操作之前的数据

Select * from test as of SCN 12345

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25136010/viewspace-683012/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25136010/viewspace-683012/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值