Tabloların tüm kolonlarını seçerek veya istediğimiz kolonlar için filtreleme koyarak denetim sağlayabiliriz, denetim kayıtları sys.fga_log$ view’inde tutulur.
Örneğin orhan user’ının orhan_deneme ismindeki tablosunu FGA denetimine alalım ve raporunu Audit Vault konsolundan çekelim;
create table orhan_deneme (id number, adi varchar2(20), per_no number);
BEGIN DBMS_FGA.ADD_POLICY (object_schema => '"ORHAN"', object_name => '«ORHAN_DENEME"', policy_name => '«ORHAN_DENEME_IUD"', statement_types => 'DELETE,INSERT,UPDATE', audit_trail => DBMS_FGA.DB, audit_column_opts => DBMS_FGA.any_columns); END;
select POLICY_NAME from dba_audit_policies where OBJECT_NAME=‘ORHAN_DENEME';
drop etmek için; BEGIN DBMS_FGA.DROP_POLICY (object_schema => '"ORHAN"', object_name => '"ORHAN_DENEME"', policy_name => '"ORHAN_DENEME_IUD"'); END; / select * from orhan_deneme; insert into orhan_deneme (id, adi, per_no) values (12,'ahmet', 76); insert into orhan_deneme (id, adi, per_no) values (:t1,:t2, :t3); update orhan_deneme set per_no=38 where id=22; delete orhan_deneme where id=12; commit; Declare c number; begin for rec in 1..100 loop c:=rec; insert into orhan_deneme values(c,'orhan'||c,rec+10); end loop; commit; end; Audit Vault konsoldan tablomuzun audit loglarının raporunu çekebiliriz;![]()
aşağıdaki gibi bir sorgu ile de konsolun verdiği raporu çekebiliriz; select B.HOST_NAME, C.USER_NAME, e.TARGET_NAME, D.EVENT_NAME, A.EVENT_TIME, A.SQL_TEXT_str, a.SQL_BIND_STR from AVSYS.AUDIT_EVENT_FACT A, AVSYS.CLIENT_HOST_DIM B , AVSYS.USER_DIM C, AVSYS.EVENT_DIM d, AVSYS.TARGET_DIM E where B.DIMENSION_KEY = A.CLIENT_HOST_DIM AND C.DIMENSION_KEY = A.USER_DIM AND D.DIMENSION_KEY = A.EVENT_DIM AND E.DIMENSION_KEY = A.TARGET_DIM AND D.EVENT_NAME IN ('UPDATE','INSERT','DELETE') AND E.TARGET_NAME = 'ORHAN_DENEME' --and A.EVENT_TIME between to_timestamp( '02.11.2013','dd.mm.yyyy') and to_timestamp( '03.11.2013','dd.mm.yyyy') order by event_time, c.user_name;