oracle 细粒度审计使用,oracle细粒度审计
以scott用户的emp表为示例----增加策略
begin
DBMS_FGA.ADD_POLICY (
object_schema => 'SCOTT',
object_name => 'EMP',
policy_name => 'mypolicy1',
handler_schema => NULL,
handler_module => NULL,
enable => TRUE,
statement_types => 'INSERT, UPDATE,DELETE',
audit_column_opts => DBMS_FGA.ANY_COLUMNS);
end;
----启用策略
begin
DBMS_FGA.ENABLE_POLICY (
object_schema => 'SCOTT',
object_name => 'EMP',
policy_name => 'mypolicy1',
enable => TRUE);
end;
select * from dba_fga_audit_trail;
select * from dba_audit_policies;
select db_user,timestamp,sql_text,sql_bind from dba_fga_audit_trail; --审计结果
SELECT text FROM dba_Views where view_name=upper('DBA_FGA_AUDIT_TRAIL'); --查看记录
----删除策略
begin
dbms_fga.drop_policy (
object_schema=>'SCOTT',
object_name=>'EMP',
policy_name=>'mypolicy1'
);
end;
you can use fine-grained auditing to monitor specific database activities, such as actions on a database table or times that activities occur. For example, you can audit a table accessed after 9:00 p.m.
从字面上去理解就能知道了,细粒度较于粗粒度,在于审计的维度更深.
可以使用ORACLE的审计功能,审计有以下几个类型:(1)系统管理员审计(拥有sysdba的权限):它是把管理员的所有操作以ascii的形式记录在一个操作系统目录下.设置方式是在系统参数中设置一个参数.(2)数据库审计:这个就是楼主平时一些操作的审计,它可以记录在数据字典表中,也可以记录在文件中,根据需求不同可以随意配置,设置方式也是修改系统参数.(3)细粒度审计:这种审计的粒度达到了IP、主机、表结构的某个字段这个层面.设置方式调用一个oracle的包, 里面有不同的方法设置审计.以上具只是一个简单介绍,具体操作可以找百度大神,设置很简单.以数据库审计为例:开启了审计开关以后,直接audit create table,那么当创建表时就会记录你的操作.希望对你有帮助.
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。