MINI MINI MANI MO
Rem
Rem $Header: rdbms/admin/catamgt.sql /main/26 2017/01/13 01:25:36 amunnoli Exp $
Rem
Rem catamgt.sql
Rem
Rem Copyright (c) 2007, 2016, Oracle and/or its affiliates.
Rem All rights reserved.
Rem
Rem NAME
Rem catamgt.sql - CAT Audit Management Packages
Rem
Rem DESCRIPTION
Rem This will install the DBMS_AUDIT_MGMT package
Rem and the views exposed by the package.
Rem
Rem NOTES
Rem Must be run as SYSDBA
Rem
Rem
Rem BEGIN SQL_FILE_METADATA
Rem SQL_SOURCE_FILE: rdbms/admin/catamgt.sql
Rem SQL_SHIPPED_FILE: rdbms/admin/catamgt.sql
Rem SQL_PHASE: CATAMGT
Rem SQL_STARTUP_MODE: NORMAL
Rem SQL_IGNORABLE_ERRORS: NONE
Rem SQL_CALLING_FILE: rdbms/admin/catptabs.sql
Rem END SQL_FILE_METADATA
Rem
Rem MODIFIED (MM/DD/YY)
Rem amunnoli 09/26/16 - Proj 67567: Register audsys.aud$unified for
Rem import/export
Rem aanverma 06/10/16 - Bug 23515378: grant read on audit views
Rem amunnoli 03/23/15 - Bug 13716158:fga_log$ now also has current_user
Rem gclaborn 07/02/14 - 18844843: grant flashback on SYS views
Rem nkgopal 06/19/14 - Lrg 12347520: re-create fga_log$for_export_tbl
Rem table
Rem nkgopal 04/16/14 - Proj 35931: FGA_LOG$ now also has rls$info column
Rem surman 12/29/13 - 13922626: Update SQL metadata
Rem nkgopal 07/16/13 - Bug 14168362: Add dbid, pdb guid to
Rem DBA_AUDIT_MGMT_LAST_ARCH_TS
Rem talliu 06/28/13 - Add CDB view for DBA view
Rem amunnoli 01/16/13 - Bug 16066652: Add Last archive timestamp,
Rem container columns to DBA_AUDIT_MGMT_CLEANUP_JOBS
Rem nkgopal 06/28/12 - Bug 14029047: Network import failure for FGA_LOG$
Rem surman 03/27/12 - 13615447: Add SQL patching tags
Rem nkgopal 01/06/12 - Bug 13561170
Rem vpriyans 10/10/11 - to fix bug 12924577
Rem nkgopal 09/20/11 - Bug 12936792
Rem nkgopal 08/19/11 - Bug 12794380: Next Generation to Unified
Rem nkgopal 05/27/11 - Bug 10406931: Register DAM_CONFIG_PARAM$,
Rem DAM_CLEANUP_JOBS$ and DAM_CLEANUP_EVENTS$ with
Rem Datapump for export
Rem nkgopal 04/20/11 - Proj 16526: Add AUDIT_TRAIL_NEXT_GENERATION
Rem types/values
Rem sarchak 04/03/09 - Bug 8406799,retaining existing configuration in
Rem DAM_CONFIG_PARAM$
Rem nkgopal 03/31/09 - Bug 8392745: Add FILE DELETE BATCH SIZE
Rem nkgopal 10/22/08 - Bug 7427306: Add default Max limits to Files
Rem nkgopal 04/08/08 - Bug 6954407: DBMS_* views to DBA_* views
Rem Create public synonyms to all views
Rem nkgopal 03/13/08 - Bug 6810355: Add DB DELETE Batch size
Rem nkgopal 01/11/08 -
Rem rahanum 11/02/07 - Merge dbms_audit_mgmt
Rem nkgopal 06/27/07 - Add comments to views
Rem ssonawan 06/26/07 - update DBMS_AUDIT_MGMT_CONFIG_PARAMS view def
Rem nkgopal 06/20/07 - Load DBMS_AUDIT_MGMT package
Rem nkgopal 06/20/07 - Created
Rem
@@?/rdbms/admin/sqlsessstart.sql
Rem The views for external use
Rem Configuration parameters
CREATE OR REPLACE VIEW DBA_AUDIT_MGMT_CONFIG_PARAMS
(
PARAMETER_NAME,
PARAMETER_VALUE,
AUDIT_TRAIL
)
AS
SELECT PARAMETER_NAME,
(CASE
WHEN cfg.PARAM_ID = 22 THEN STRING_VALUE
WHEN cfg.PARAM_ID = 33 THEN
decode(NUMBER_VALUE,
1, 'QUEUED WRITE MODE',
2, 'IMMEDIATE WRITE MODE',
'UNKNOWN MODE')
ELSE
CASE
WHEN NUMBER_VALUE = 0 THEN 'NOT SET'
ELSE TO_CHAR(NUMBER_VALUE)
END
END),
decode(cfg.AUDIT_TRAIL_TYPE#,
1, 'STANDARD AUDIT TRAIL',
2, 'FGA AUDIT TRAIL',
3, 'STANDARD AND FGA AUDIT TRAIL',
4, 'OS AUDIT TRAIL',
8, 'XML AUDIT TRAIL',
12, 'OS AND XML AUDIT TRAIL',
15, 'ALL AUDIT TRAILS',
51, 'UNIFIED AUDIT TRAIL',
'UNKNOWN AUDIT TRAIL')
FROM DAM_CONFIG_PARAM$ cfg, DAM_PARAM_TAB$ prm
WHERE prm.PARAMETER# = cfg.PARAM_ID
/
comment on table DBA_AUDIT_MGMT_CONFIG_PARAMS is
'The view displays the currently configured audit trail properties that are defined by the DBMS_AUDIT_MGMT PL/SQL package'
/
comment on column DBA_AUDIT_MGMT_CONFIG_PARAMS.PARAMETER_NAME is
'Name of the Property'
/
comment on column DBA_AUDIT_MGMT_CONFIG_PARAMS.PARAMETER_VALUE is
'Value of the Property'
/
comment on column DBA_AUDIT_MGMT_CONFIG_PARAMS.AUDIT_TRAIL is
'Audit Trail(s) for which the property is configured'
/
create or replace public synonym DBA_AUDIT_MGMT_CONFIG_PARAMS for
DBA_AUDIT_MGMT_CONFIG_PARAMS
/
--Bug 12924577
--Allow audit_admin role to select from dba_audit_mgmt_config_params
--
grant read on DBA_AUDIT_MGMT_CONFIG_PARAMS to AUDIT_ADMIN
/
execute CDBView.create_cdbview(false,'SYS','DBA_AUDIT_MGMT_CONFIG_PARAMS','CDB_AUDIT_MGMT_CONFIG_PARAMS');
grant read on SYS.CDB_AUDIT_MGMT_CONFIG_PARAMS to AUDIT_ADMIN
/
create or replace public synonym CDB_AUDIT_MGMT_CONFIG_PARAMS for SYS.CDB_AUDIT_MGMT_CONFIG_PARAMS
/
CREATE OR REPLACE VIEW DBA_AUDIT_MGMT_LAST_ARCH_TS
(
AUDIT_TRAIL,
RAC_INSTANCE,
LAST_ARCHIVE_TS,
DATABASE_ID,
CONTAINER_GUID
)
AS
SELECT decode(AUDIT_TRAIL_TYPE#,
1, 'STANDARD AUDIT TRAIL',
2, 'FGA AUDIT TRAIL',
4, 'OS AUDIT TRAIL',
8, 'XML AUDIT TRAIL',
51, 'UNIFIED AUDIT TRAIL',
'UNKNOWN AUDIT TRAIL'),
RAC_INSTANCE#,
decode(AUDIT_TRAIL_TYPE#,
1, FROM_TZ(LAST_ARCHIVE_TIMESTAMP, '0:00'),
2, FROM_TZ(LAST_ARCHIVE_TIMESTAMP, '0:00'),
4, FROM_TZ(LAST_ARCHIVE_TIMESTAMP, TZ_OFFSET(sessiontimezone)),
8, FROM_TZ(LAST_ARCHIVE_TIMESTAMP, TZ_OFFSET(sessiontimezone)),
51, FROM_TZ(LAST_ARCHIVE_TIMESTAMP, '0:00'),
LAST_ARCHIVE_TIMESTAMP),
DATABASE_ID,
CONTAINER_GUID
FROM DAM_LAST_ARCH_TS$
/
comment on table DBA_AUDIT_MGMT_LAST_ARCH_TS is
'The Last Archive Timestamps set for the Audit Trail Clean up'
/
comment on column DBA_AUDIT_MGMT_LAST_ARCH_TS.AUDIT_TRAIL is
'The Audit Trail for which the Last Archive Timestamp applies'
/
comment on column DBA_AUDIT_MGMT_LAST_ARCH_TS.RAC_INSTANCE is
'The RAC Instance Number for which the Last Archive Timestamp applies. Zero implies ''Not Applicable'''
/
comment on column DBA_AUDIT_MGMT_LAST_ARCH_TS.LAST_ARCHIVE_TS is
'The Timestamp of the last audit record or audit file that has been archived'
/
comment on column DBA_AUDIT_MGMT_LAST_ARCH_TS.DATABASE_ID is
'The Database ID of the audit records, if purging old audit data'
/
comment on column DBA_AUDIT_MGMT_LAST_ARCH_TS.CONTAINER_GUID is
'The Container GUID of the audit records, if purging old audit data'
/
create or replace public synonym DBA_AUDIT_MGMT_LAST_ARCH_TS for
DBA_AUDIT_MGMT_LAST_ARCH_TS
/
--
--Allow audit_admin role to select from dba_audit_mgmt_last_arch_ts
--
grant read on DBA_AUDIT_MGMT_LAST_ARCH_TS to AUDIT_ADMIN
/
execute CDBView.create_cdbview(false,'SYS','DBA_AUDIT_MGMT_LAST_ARCH_TS','CDB_AUDIT_MGMT_LAST_ARCH_TS');
grant read on SYS.CDB_AUDIT_MGMT_LAST_ARCH_TS to AUDIT_ADMIN
/
create or replace public synonym CDB_AUDIT_MGMT_LAST_ARCH_TS for SYS.CDB_AUDIT_MGMT_LAST_ARCH_TS
/
CREATE OR REPLACE VIEW DBA_AUDIT_MGMT_CLEANUP_JOBS
(
JOB_NAME,
JOB_STATUS,
AUDIT_TRAIL,
JOB_FREQUENCY,
USE_LAST_ARCHIVE_TIMESTAMP,
JOB_CONTAINER
)
AS
SELECT JOB_NAME,
decode(JOB_STATUS,
0, 'DISABLED',
1, 'ENABLED',
'UNKNOWN'),
decode(AUDIT_TRAIL_TYPE#,
1, 'STANDARD AUDIT TRAIL',
2, 'FGA AUDIT TRAIL',
3, 'STANDARD AND FGA AUDIT TRAIL',
4, 'OS AUDIT TRAIL',
8, 'XML AUDIT TRAIL',
12, 'OS AND XML AUDIT TRAIL',
15, 'ALL AUDIT TRAILS',
51, 'UNIFIED AUDIT TRAIL',
'UNKNOWN AUDIT TRAIL'),
JOB_FREQUENCY,
decode(bitand(job_flags, 1), 1, 'NO', 'YES'),
decode(bitand(job_flags, 2), 2, 'ALL', 'CURRENT')
FROM DAM_CLEANUP_JOBS$
/
comment on table DBA_AUDIT_MGMT_CLEANUP_JOBS is
'The view displays the currently configured audit trail purge jobs'
/
comment on column DBA_AUDIT_MGMT_CLEANUP_JOBS.JOB_NAME is
'The name of the Audit Trail Purge Job'
/
comment on column DBA_AUDIT_MGMT_CLEANUP_JOBS.JOB_STATUS is
'The current status of the Audit Trail Purge Job'
/
comment on column DBA_AUDIT_MGMT_CLEANUP_JOBS.AUDIT_TRAIL is
'The Audit Trail for which the Audit Trail Purge Job is configured'
/
comment on column DBA_AUDIT_MGMT_CLEANUP_JOBS.JOB_FREQUENCY is
'The frequency at which the Audit Trail Purge Job runs'
/
comment on column DBA_AUDIT_MGMT_CLEANUP_JOBS.USE_LAST_ARCHIVE_TIMESTAMP is
'Indicates if cleanup invocation will use Last Archive Timestamp'
/
comment on column DBA_AUDIT_MGMT_CLEANUP_JOBS.JOB_CONTAINER is
'Indicates in which Container cleanup will be performed'
/
create or replace public synonym DBA_AUDIT_MGMT_CLEANUP_JOBS for
DBA_AUDIT_MGMT_CLEANUP_JOBS
/
--
--Allow audit_admin role to select from dba_audit_mgmt_cleanup_jobs
--
grant read on DBA_AUDIT_MGMT_CLEANUP_JOBS to AUDIT_ADMIN
/
execute CDBView.create_cdbview(false,'SYS','DBA_AUDIT_MGMT_CLEANUP_JOBS','CDB_AUDIT_MGMT_CLEANUP_JOBS');
grant read on SYS.CDB_AUDIT_MGMT_CLEANUP_JOBS to AUDIT_ADMIN
/
create or replace public synonym CDB_AUDIT_MGMT_CLEANUP_JOBS for SYS.CDB_AUDIT_MGMT_CLEANUP_JOBS
/
CREATE OR REPLACE VIEW DBA_AUDIT_MGMT_CLEAN_EVENTS
(
AUDIT_TRAIL,
RAC_INSTANCE,
CLEANUP_TIME,
DELETE_COUNT,
WAS_FORCED
)
AS
SELECT decode(AUDIT_TRAIL_TYPE#,
1, 'STANDARD AUDIT TRAIL',
2, 'FGA AUDIT TRAIL',
3, 'STANDARD AND FGA AUDIT TRAIL',
4, 'OS AUDIT TRAIL',
8, 'XML AUDIT TRAIL',
12, 'OS AND XML AUDIT TRAIL',
15, 'ALL AUDIT TRAILS',
51, 'UNIFIED AUDIT TRAIL',
'UNKNOWN AUDIT TRAIL'),
RAC_INSTANCE#,
FROM_TZ(CLEANUP_TIME, '0:00'),
DELETE_COUNT,
decode(WAS_FORCED,
0, 'NO',
1, 'YES',
null)
FROM DAM_CLEANUP_EVENTS$
ORDER BY SERIAL#
/
comment on table DBA_AUDIT_MGMT_CLEAN_EVENTS is
'The history of cleanup events'
/
comment on column DBA_AUDIT_MGMT_CLEAN_EVENTS.AUDIT_TRAIL is
'The Audit Trail that was cleaned at the time of the event'
/
comment on column DBA_AUDIT_MGMT_CLEAN_EVENTS.RAC_INSTANCE is
'The Instance Number indiccating the RAC Instance that was cleaned up at the time of the event. Zero implies ''Not Applicable'''
/
comment on column DBA_AUDIT_MGMT_CLEAN_EVENTS.CLEANUP_TIME is
'The Timestamp in GMT when the cleanup event completed'
/
comment on column DBA_AUDIT_MGMT_CLEAN_EVENTS.DELETE_COUNT is
'The number of audit records or audit files that were deleted at the time of the event'
/
comment on column DBA_AUDIT_MGMT_CLEAN_EVENTS.WAS_FORCED is
'Indicates whether or not a Forced Cleanup occured. Forced Cleanup bypasses the Last Archive Timestamp set'
/
create or replace public synonym DBA_AUDIT_MGMT_CLEAN_EVENTS for
DBA_AUDIT_MGMT_CLEAN_EVENTS
/
--
--Allow audit_admin role to select from dba_audit_mgmt_cleanup_events
--
grant read on DBA_AUDIT_MGMT_CLEAN_EVENTS to AUDIT_ADMIN
/
execute CDBView.create_cdbview(false,'SYS','DBA_AUDIT_MGMT_CLEAN_EVENTS','CDB_AUDIT_MGMT_CLEAN_EVENTS');
grant read on SYS.CDB_AUDIT_MGMT_CLEAN_EVENTS to AUDIT_ADMIN
/
create or replace public synonym CDB_AUDIT_MGMT_CLEAN_EVENTS for SYS.CDB_AUDIT_MGMT_CLEAN_EVENTS
/
-- INSERT Properties supported
-- These IDs map to the constants defined in DBMS_AUDIT_MGMT package
-- Truncate the tables before INSERT
CREATE OR REPLACE PROCEDURE INSERT_INTO_DAMPARAMTAB$
(t_parameter IN PLS_INTEGER,
t_parameter_name IN VARCHAR2
)
IS
m_sql_stmt VARCHAR2(2000);
BEGIN
m_sql_stmt := 'insert into sys.dam_param_tab$ '||
'values(:1,:2)';
EXECUTE IMMEDIATE m_sql_stmt using t_parameter,t_parameter_name;
EXCEPTION
WHEN OTHERS THEN
IF SQLCODE IN ( -00001) THEN --ignore unique constraint violation
-- Parameter name changed from CLEANUP TRACE LEVEL to
-- AUDIT MANAGEMENT TRACE LEVEL from 11.1.0.7 to 11.2
IF ( t_parameter = 24 ) THEN
m_sql_stmt := 'update dam_param_tab$ set '||
'parameter_name=:1 where '||
'parameter#=24';
EXECUTE IMMEDIATE m_sql_stmt using t_parameter_name;
END IF;
DBMS_OUTPUT.PUT_LINE('Configuration already exists for '||t_parameter_name);
ELSE RAISE;
END IF;
END;
/
BEGIN
INSERT_INTO_DAMPARAMTAB$ (16, 'AUDIT FILE MAX SIZE') ;
END;
/
BEGIN
INSERT_INTO_DAMPARAMTAB$ (17, 'AUDIT FILE MAX AGE') ;
END;
/
BEGIN
INSERT_INTO_DAMPARAMTAB$ (21, 'DEFAULT CLEAN UP INTERVAL') ;
END;
/
BEGIN
INSERT_INTO_DAMPARAMTAB$ (22, 'DB AUDIT TABLESPACE') ;
END;
/
BEGIN
INSERT_INTO_DAMPARAMTAB$ (23, 'DB AUDIT CLEAN BATCH SIZE') ;
END;
/
BEGIN
INSERT_INTO_DAMPARAMTAB$ (24, 'AUDIT MANAGEMENT TRACE LEVEL') ;
END;
/
-- Parameter 25 is reserved for audit table movement flag.
-- And must not be inserted in DAM_PARAM_TAB$
BEGIN
INSERT_INTO_DAMPARAMTAB$ (26, 'OS FILE CLEAN BATCH SIZE') ;
END;
/
BEGIN
INSERT_INTO_DAMPARAMTAB$ (33, 'AUDIT WRITE MODE') ;
END;
/
CREATE OR REPLACE PROCEDURE INSERT_INTO_DAMCONFIGPARAMS$
(t_param_id IN PLS_INTEGER,
t_audit_trail_type IN PLS_INTEGER,
t_number_value IN PLS_INTEGER ,
t_string_value IN VARCHAR2
)
IS
m_sql_stmt VARCHAR2(2000);
BEGIN
IF ( t_number_value is NULL ) THEN
m_sql_stmt := 'insert into sys.dam_config_param$ ' ||
'values(:1,:2,NULL,:3)';
EXECUTE IMMEDIATE m_sql_stmt using t_param_id,t_audit_trail_type,
t_string_value;
ELSE
m_sql_stmt := 'insert into sys.dam_config_param$ ' ||
'values(:1,:2,:3,:4)';
EXECUTE IMMEDIATE m_sql_stmt using t_param_id,t_audit_trail_type,
t_number_value,t_string_value;
END IF;
EXCEPTION
WHEN OTHERS THEN
IF SQLCODE IN ( -00001) THEN --ignore unique constraint violation
DBMS_OUTPUT.PUT_LINE('Configuration already exists for param_id : ' ||
t_param_id);
ELSE RAISE;
END IF;
END;
/
--(DB AUDIT TABLESPACE , AUD$, <NUMBER_VALUE> ,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$(22, 1, NULL, 'SYSAUX') ;
END;
/
--(DB AUDIT TABLESPACE , FGA_LOG$ , <NUMBER_VALUE> ,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$(22 , 2, NULL, 'SYSAUX') ;
END;
/
--(DB AUDIT TABLESPACE , UNIFIED AUDIT TRAIL, <NUMBER_VALUE> ,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$(22 , 51, NULL, 'SYSAUX') ;
END;
/
-- Default OS/XML File Max Size and Age
--( AUDIT FILE MAX SIZE, OS Audit Trail, <NUMBER_VALUE> ,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$(16 , 4 , 10000 , NULL) ;
END;
/
--( AUDIT FILE MAX SIZE, XML Audit Trail, <NUMBER_VALUE> ,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$(16 , 8 , 10000 , NULL) ;
END;
/
--( AUDIT FILE MAX AGE, OS Audit Trail , <NUMBER_VALUE> ,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$(17 , 4 , 5 , NULL) ;
END;
/
--( AUDIT FILE MAX AGE, XML Audit Trail , <NUMBER_VALUE> ,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$(17 , 8 , 5 , NULL) ;
END;
/
-- Default Delete Batch Size
--( DB AUDIT CLEAN BATCH SIZE, AUD$ , <NUMBER_VALUE> ,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$(23 , 1 , 10000 , NULL) ;
END;
/
--( DB AUDIT CLEAN BATCH SIZE, FGA_LOG$ , <NUMBER_VALUE> ,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$(23 , 2 , 10000 , NULL) ;
END;
/
-- Parameter 25 is reserved for audit table movement flag.
-- And must not be inserted in DAM_PARAM_TAB$
--(OS FILE CLEAN BATCH SIZE,OS AUDIT TRAIL,<NUMBER_VALUE>,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$( 26 , 4 , 1000 , NULL );
END;
/
--(OS FILE CLEAN BATCH SIZE,XML AUDIT TRAIL,<NUMBER_VALUE>,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$( 26 , 8 , 1000 , NULL );
END;
/
--(UNIFIED AUDIT TRAIL WRITE MODE,UNIFIED AUDIT TRAIL,
-- <NUMBER_VALUE>,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$(33, 51 , 1 , NULL );
END;
/
--(FILE MAX SIZE, UNIFIED AUDIT TRAIL, <NUMBER_VALUE> ,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$(16 , 51 , 10000 , NULL) ;
END;
/
--( AUDIT FILE MAX AGE, UNIFIED AUDIT TRAIL,
-- <NUMBER_VALUE> ,<STRING_VALUE> )
BEGIN
INSERT_INTO_DAMCONFIGPARAMS$(17 , 51 , 5 , NULL) ;
END;
/
DROP PROCEDURE INSERT_INTO_DAMPARAMTAB$
/
DROP PROCEDURE INSERT_INTO_DAMCONFIGPARAMS$
/
COMMIT
/
Rem Regsiter the following tables for Export with Datapump (sys.impcalloutreg$)
Rem
Rem First make sure SYSTEM.AUD$ is not exported (when OLS installed)
Rem Make an entry to SYS.NOEXP$
delete from sys.noexp$ where name = 'AUD$' and owner = 'SYSTEM';
insert into sys.noexp$ (owner, name, obj_type) values
('SYSTEM', 'AUD$', 2);
commit;
Rem
Rem Bug 14029047:
Rem FGA_LOG$ will not be imported via Network Import because of its LONG column
Rem So, register a view without Long column
Rem
create or replace view fga_log$for_export (
sessionid, timestamp#, dbuid, osuid, oshst, clientid, extid,
obj$schema, obj$name, policyname, scn, sqltext, lsqltext, sqlbind,
comment$text,
stmt_type, ntimestamp#, proxy$sid, user$guid, instance#, process#,
xid, auditid, statement, entryid, dbid, lsqlbind, obj$edition, rls$info,
current_user)
as
select
sessionid, timestamp#, dbuid, osuid, oshst, clientid, extid,
obj$schema, obj$name, policyname, scn, sqltext, lsqltext, sqlbind,
comment$text, /* No PLHOL column */
stmt_type, ntimestamp#, proxy$sid, user$guid, instance#, process#,
xid, auditid, statement, entryid, dbid, lsqlbind, obj$edition, rls$info,
current_user
from sys.fga_log$
/
grant select on fga_log$for_export to select_catalog_role
/
grant flashback on fga_log$for_export to select_catalog_role
/
drop table fga_log$for_export_tbl
/
Rem Lrg 12347520: Re-create based on new fga_log$for_export columns
create table fga_log$for_export_tbl as select * from fga_log$for_export
where 0 = 1 /* just a table with no rows, required only for meta-data */
/
grant select on fga_log$for_export_tbl to select_catalog_role
/
Rem
Rem Also create a view to store current audit table tablespaces to help
Rem movement on the target database
Rem
create or replace view audtab$tbs$for_export (owner, name, ts_name)
as
select owner, table_name, tablespace_name from dba_tables
where owner = 'SYS' and (table_name = 'AUD$' or table_name = 'FGA_LOG$')
/
grant select on audtab$tbs$for_export to select_catalog_role
/
grant flashback on audtab$tbs$for_export to select_catalog_role
/
drop table audtab$tbs$for_export_tbl
/
create table audtab$tbs$for_export_tbl as select * from audtab$tbs$for_export
where 0 = 1
/
grant select on audtab$tbs$for_export_tbl to select_catalog_role
/
Rem Next Delete existing entries, if any
delete from sys.impcalloutreg$ where tag = 'AUDIT_TRAILS';
Rem
Rem Need to know Audit Trail Configuration first
Rem
insert into sys.impcalloutreg$
(package, schema, tag, class, level#, flags, tgt_schema, tgt_object, tgt_type,
cmnt)
values
('AMGT$DATAPUMP','SYS', 'AUDIT_TRAILS', 3, 1, 0, 'SYS', 'DAM_CONFIG_PARAM$',
2 /*table*/,
'Database Audit Trails and their configuration');
Rem Also, send tablespace names
insert into sys.impcalloutreg$
(package, schema, tag, class, level#, flags, tgt_schema, tgt_object, tgt_type,
cmnt)
values
('AMGT$DATAPUMP','SYS', 'AUDIT_TRAILS', 3, 2, 0, 'SYS',
'AUDTAB$TBS$FOR_EXPORT', 4 /*view*/,
'Database Audit Trails and their configuration');
Rem Now, Register both possible locations for AUD$
insert into sys.impcalloutreg$
(package, schema, tag, class, level#, flags, tgt_schema, tgt_object, tgt_type,
cmnt)
values
('AMGT$DATAPUMP','SYS', 'AUDIT_TRAILS', 3, 3, 0, 'SYS', 'AUD$', 2 /*table*/,
'Database Audit Trails and their configuration');
insert into sys.impcalloutreg$
(package, schema, tag, class, level#, flags, tgt_schema, tgt_object, tgt_type,
cmnt)
values
('AMGT$DATAPUMP','SYS', 'AUDIT_TRAILS', 3, 3, 0, 'SYSTEM', 'AUD$',
2 /*table*/,
'Database Audit Trails and their configuration');
Rem Next, register FGA_LOG$ for 11.2.0.3 support
insert into sys.impcalloutreg$
(package, schema, tag, class, level#, flags, tgt_schema, tgt_object, tgt_type,
cmnt)
values
('AMGT$DATAPUMP','SYS', 'AUDIT_TRAILS', 3, 4, 8, 'SYS', 'FGA_LOG$',
2 /*table*/,
'Database Audit Trails and their configuration');
Rem Next, register FGA_LOG$FOR_EXPORT
insert into sys.impcalloutreg$
(package, schema, tag, class, level#, flags, tgt_schema, tgt_object, tgt_type,
cmnt)
values
('AMGT$DATAPUMP','SYS', 'AUDIT_TRAILS', 3, 5, 1, 'SYS', 'FGA_LOG$FOR_EXPORT',
4 /*view*/,
'Database Audit Trails and their configuration');
Rem Next, register DAM_CLEANUP_JOBS$
insert into sys.impcalloutreg$
(package, schema, tag, class, level#, flags, tgt_schema, tgt_object, tgt_type,
cmnt)
values
('AMGT$DATAPUMP','SYS', 'AUDIT_TRAILS', 3, 6, 0, 'SYS', 'DAM_CLEANUP_JOBS$',
2 /*table*/,
'Database Audit Trails and their configuration');
Rem Next, register DAM_CLEANUP_EVENTS$
insert into sys.impcalloutreg$
(package, schema, tag, class, level#, flags, tgt_schema, tgt_object, tgt_type,
cmnt)
values
('AMGT$DATAPUMP','SYS', 'AUDIT_TRAILS', 3, 7, 0, 'SYS', 'DAM_CLEANUP_EVENTS$',
2 /*table*/,
'Database Audit Trails and their configuration');
Rem Proj 67567: Register AUDSYS.AUD$UNIFIED table
insert into sys.impcalloutreg$
(package, schema, tag, class, level#, flags, tgt_schema, tgt_object, tgt_type,
cmnt, beginning_tgt_version)
values
('AMGT$DATAPUMP','SYS', 'AUDIT_TRAILS', 3, 8, 0, 'AUDSYS',
'AUD$UNIFIED', 2 /*table*/,
'Database Audit Trails and their configuration', '12.02.00.02.00');
commit;
Rem *************************************************************************
@?/rdbms/admin/sqlsessend.sql
OHA YOOOO