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;

时间: 2024-11-10 20:52:56

oracle 细粒度审计使用的相关文章

5、Oracle数据库审计

1.审计(Audit): 对用户所执行的数据库活动的跟踪记录,便于事后监督.检查. 审计信息存放位置: 审计记录信息,存储在system表空间中的SYS.AUD$数据字典表: 或操作系统默认位置$ORACLE_BASE/admin/$ORACLE_SID/adump/: 审计参数AUDIT_TRAIL 参数值取值列表: (1).DB/TRUE ---- 启用审计,并且把审计结果存放在数据库的SYS.AUD$表中 (2).OS ---- 启用审计,并把审计结果存放在操作系统的审计信息中 (3).D

oracle细粒度(fga)审核

Oracle9i Database 推出了一种称为细粒度审计 (FGA) 的新特性.现在下面就利用FGA实现审计对表的审计.其中,EDMS是数据库的一个测试帐户. 1.   建立测试表(用户EDMS下) Create Table T_AUDIT_DEMO( CID   INT   NOT NULL, CNAME VARCHAR2(20) NULL, ENAME VARCHAR2(20) NULL, CONSTRAINT PK_T_AUDIT_DEMO PRIMARY KEY (CID)); 2.

[转]Oracle DB审计

? 说明DBA 负责的安全和审计工作 ? 启用标准数据库审计 ? 指定审计选项 ? 复查审计信息 ? 维护审计线索 责任分离 ? 具有DBA 权限的用户必须是可信任的. – 滥用信任 – 用审计线索保护受信任位置 ? 必须共同分担DBA 责任. ? 绝对不要共享帐户. ? DBA 和系统管理员必须由不同的人员担任. ? 分离操作员与DBA 的责任. 以下是满足责任分离的主要要求. DBA 必须是可信任的:很难限制某个DBA 去做什么.为了完成工作,DBA 需要很高的权限.DBA 是受信任的职位,

学习Oracle的审计(Auditing)

审计(Audit)用于监视用户所执行的数据库操作,审计记录可存在数据字典表(称为审计记录:存储在system表空间中的 SYS.AUD$ 表中,可通过视图dba_audit_trail查看)或操作系统审计记录中(audit_file_dest参数决定).默认情况下审计是没有开启的. 1.审计的类型有四种: Statement Auditing(语句审计):在语句级别进行审计,如审计执行SELECT TABLE的语句,而不针对某一单独的对象. Privilege Auditing(权限审计):审计

Oracle 数据库审计

保证数据库的安全有两种方式,一种是通过权限的存取控制机制,即通过预先控制来防止安全事件的发生:另一种是数据库审计,即对数据库活动做跟踪记录,当发生安全事件时,通过对数据库活动记录进行审计来发现并修复安全问题. Oracle使用大量不同的审计方法来监控使用何种权限,以及访问哪些对象.审计不会防止使用这些权限,但可以提供有用的信息,用于揭示权限的滥用和误用.数据库审计的主要对象包括数据库链接.SQL语句执行.数据库对象访问等方面.审计记录存储的位置有两种选择:一种是存储在操作系统文件中,一种是存储在

使用DBMS_FGA实现细粒度审计

实验:使用DBMS_FGA实现细粒度审计 1,创建测试表 [email protected]> create table audit_test (x number ); Table created. 2,创建审计策略 [email protected]> conn / as sysdba Connected. [email protected]> begin DBMS_FGA.ADD_POLICY ( object_schema      =>  'TEST_USR1', --要审

oracle 11g 审计文件 audit

审计文件:记录数据库中的可疑操作:sys的连接和数据库的启动.停止一定会被审计!审计文件的位置:show parameter audit_file_dest 如果审计目录不存在,数据库将无法正常启动!SQL> startupORA-09925: Unable to create audit trail fileLinux-x86_64 Error: 2: No such file or directoryAdditional information: 9925 Oracle 的审计实在是鸡肋,审

Oracle fga审计有这几个特性

fga审计有这几个特性: 本文为原创文章,转载请注明出处: http://blog.csdn.net/msdnchina/article/details/38409057 1.select * from table_xxx where 1=2 --该语句是不会被审计到dba_fga_audit_trail中的,原因我猜测是没有任何记录被select到 2.以sys用户登陆 一个会话,执行select * from user.table_xxx ,是不会被fga审计到的(也就是不往dba_fga_

Oracle FGA细粒度审计

如果你想要审计表上,在某个时间,哪些人,操作哪些DML语句,用FGA是个不错的选择. SQL> select * from v$version; Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production PL/SQL Release 11.2.0.1.0 - Production CORE    11.2.0.1.0      Production TNS for Linux: Version 11.