Audit Record written When We Select From View even if The Audited Column Is Not Selected (Doc ID 310873.1)

Last updated on OCTOBER 13, 2016

Applies to:

Oracle Server - Enterprise Edition - Version: 9.2.0.1 to 9.2.0.6
Information in this document applies to any platform.

Goal

An FGA policy is applied on a table with a specific AUDIT_COLUMN .

A view is created on this table with a UNION on another table.

When selecting columns except the audited column from the view,  an audit record is nevertheless created.

Is this the expected behavior ?

SQL> create table tab1 (c1 varchar2(10), c2 varchar2(10));
SQL> create table tab2 (c1 varchar2(10), c2 varchar2(10));
SQL> create or replace view vista as   select * from tab1 union select * from tab2;   
begin  
dbms_fga.add_policy(object_schema => 'SCOTT', object_name   => 'TAB1', policy_name   => 'AUDIT_TAB1',  audit_column  => 'C1');
end; 
/
SQL> select c2 from vista;
SQL> select SQL_TEXT from dba_fga_audit_trail;
SQL_TEXT
-------------------------------------------------------------------------------
select c2 from vista

Solution

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms