场景
管理信息化应用,想审计某张表的数据是否做了删除。Oracle中专门有自带的函数。可以满足这个需求
1.查询审计日志的语句
select timestamp,
db_user,
os_user,
object_schema,
object_name,
sql_text
from dba_fga_audit_trail;
2.开启审计策略
begin
dbms_fga.add_policy (
object_schema => ‘FxxxN‘,
object_name => ‘BG_xxx_PAY‘,
policy_name => ‘BG_xxx_PAY_AUDIT‘,
statement_types => ‘DELETE‘
);
end;
其中
-
FxxxN
代表是schema的用户。 -
BG_xxx_PAY
对应的表名。 -
statement_types
对应操作的语句。
3.查看策略是否添加
select * from dba_audit_policies