Oracle 12c 統一審計(Unified Auditing)

panpong發表於2019-02-27

今天使用者要求查詢近一段時間內的特定幾個使用者的登陸記錄。看到這個需求後的第一個反應是資料庫需要開啟審計才能查。

首先,確認audit_trail引數,值為DB;然後,查詢aud$,dba_session_audit等,發現記錄數為0;看到結果感覺不對啊,檢視資料庫版本為12.1.0.2,

趕緊找原因吧?原來是oracle 12c 新特性:Unified Audit。

為節約學習時間,下面整理TeacherWhat博主的系列文章,以作學習筆記,也分享給大家;TeacherWhat博主原創系列文章在文後一一列出,在此表示感謝!!!

一、     統一審計( Unified Auditing )簡介

Oracle Database 12c  推出一套全新的審計架構,稱為統一審計功能。統一審計主要利用策略和條件在  Oracle  資料庫內部有選擇地執行有效的審計。新架構將現有審計跟蹤統一為單一審計跟蹤,從而簡化了管理,提高了資料庫生成的審計資料的安全性。

關於統一審計的基礎知識,大家可以參考以下 Oracle 的官方線上文件,在這裡僅作簡單的介紹。

Database Security Guide

初始安裝的 12c 資料庫,為了相容以前的版本預設啟用混合模式,即傳統審計統一審計同時有效。你可以透過手動移植到完全的統一審計,也可以使統一審計無效,沿用傳統審計。   你可以透過以下的 SQL 文,查詢統一審計是否有效。 TRUE 表示完全的統一審計有效。 FALSE 表示並非是完全的統一審計。

SQL>SELECT PARAMETER VALUE FROM V$OPTION WHERE PARAMETER = 'Unified Auditing';

PARAMETER         VALUE

----------------  ----------

Unified Auditing  TRUE

注意:在 SE 的資料庫 12.1.0.1 12.1.0.2 版本中,由於 Bug 17466854 的影響,即使完全的統一審計有效的情況下, V$OPTION Unified Auditing 行也表示為 FALSE Bug 17466854 將在未來版本 12.2 中修復。

1.      切換審計模式

你可以透過以下的方法把資料庫審計的混合模式切換到完全的統一審計(UNIX為例)。

SQL> conn /as sysdba

SQL> SHUTDOWN IMMEDIATE

SQL> EXIT

 

$ lsnrctl stop listener_name

$ cd $ORACLE_HOME/rdbms/lib

$ make -f ins_rdbms.mk uniaud_on ioracle ORACLE_HOME=$ORACLE_HOME

$ lsnrctl start listener_name

 

SQL> conn /as sysdba

SQL> STARTUP

2.      關閉統一審計

你也可以透過以下的方法把資料庫統一審計功能關閉掉( UNIX 為例)。

SQL> conn /as sysdba

SQL> SHUTDOWN IMMEDIATE

SQL> EXIT

 

$ lsnrctl stop listener_name

$ cd $ORACLE_HOME/rdbms/lib

$ make -f ins_rdbms.mk uniaud_off ioracle

$ lsnrctl start listener_name

 

SQL> conn /as sysdba

SQL> STARTUP

 

3.      預設有效的審計策略

12c 資料庫中預先定義了一些審計策略,並且根據版本不同,預設開啟的審計策略也略有不同。

我們可以透過 audit_unified_enabled_policies 檢視進行確認預設開啟的統一審計的審計策略。

--12.1.0.2 的預設審計策略

SQL> select USER_NAME,POLICY_NAME,ENABLED_OPT,SUCCESS,FAILURE from audit_unified_enabled_policies;

 

USER_NAME   POLICY_NAME         ENABLED_OPT  SUCCES FAILUR

-------------------- -------------------- ---------------- ------ ------

ALL USERS   ORA_SECURECONFIG     BY           YES  YES

ALL USERS   ORA_LOGON_FAILURES   BY           NO   YES

 

--12.1.0.1 的預設審計策略

SQL> select USER_NAME,POLICY_NAME,ENABLED_OPT,SUCCESS,FAILURE from audit_unified_enabled_policies;

 

USER_NAME   POLICY_NAME         ENABLED_OPT  SUCCES FAILUR

-------------------- -------------------- ---------------- ------ ------

ALL USERS   ORA_SECURECONFIG     BY           YES  YES

由上面的輸出結果我們可以看到,不做任何配置的情況下,   12.1.0.2 資料庫的環境中,預設開啟了 ORA_SECURECONFIG ORA_LOGONFAILURES 審計策略,資料庫會根據這 2 個審計策略,對相應的操作進行審計。   12.1.0.1 資料庫的環境中,預設開啟了 ORA_SECURECONFIG 審計策略,資料庫會根據這個審計策略,對相應的操作進行審計。

需要說明的是, ORA_SECURECONFIG 審計策略在 12.1.0.1 12.1.0.2 的版本上的定義是不同的。

12.1.0.1 資料庫的環境中, ORA_SECURECONFIG 審計策略包含了對所有 LOGON LOGOFF 的審計。

而在 12.1.0.2 資料庫中,, ORA_SECURECONFIG 審計策略移除了對所有 LOGON LOGOFF 的審計,而增加了一個新的審計策略 ORA_LOGON_FAILURES ,用於僅審計登陸失敗的操作。這樣更加方管理,也能改善因為大量 LOGON LOGOFF 的審計對錶空間的浪費。

ORA_SECURECONFIG 審計策略的詳細可以參考以下官方線上文件,

ORALOGONFAILURES 審計策略的詳細可以參考以下,

 

二、     使用統一審計

統一審計使用主要分為以下幾個步驟:

l    建立一個審計策略

l    使審計策略有效

l    執行相關的操作

l    統一審計的審計結果寫到資料檔案

l    查詢審計

 

審計策略相關操作例如下:

1.        建立審計策略

建立一個審計策略,審計對錶 scott.emp select 操作

SQL> create audit policy up1 actions select on scott.emp;

 

2.        啟用審計策略

使審計策略有效:

SQL> audit policy up1;

確認審計策略已經建立

SQL> set linesize 200

SQL> col POLICY_NAME format a20

SQL> col OBJECT_NAME format a15

SQL> select POLICY_NAME,AUDIT_OPTION_TYPE,OBJECT_NAME,COMMON

from AUDIT_UNIFIED_POLICIES where POLICY_NAME = upper('up1');

 

POLICY_NAME  AUDIT_OPTION_TYPEOBJECT_NAME COMMON

-------------------- ------------------------------------ --------------- ------

UP1  OBJECT ACTIONEMP NO

 

查詢現在有效的審計策略

SQL> col POLICY_NAME format a20

SQL> col USER_NAME format a20

SQL> select USER_NAME,POLICY_NAME,ENABLED_OPT,SUCCESS,FAILURE  from AUDIT_UNIFIED_ENABLED_POLICIES;

 

USER_NAMEPOLICY_NAME  ENABLED_OPT  SUCCES FAILUR

-------------------- -------------------- ---------------- ------ ------

ALL USERSORA_SECURECONFIG BY   YESYES

ALL USERSORA_LOGON_FAILURES   BY   NO YES

ALL USERSUP1  BY   YESYES

 

3.        禁用審計策略

 

SQL> NOAUDIT POLICY UP1;

 

確認現在有效的審計策略, UP1 已經沒有了。

SQL> select USER_NAME,POLICY_NAME,ENABLED_OPT,SUCCESS,FAILURE  from AUDIT_UNIFIED_ENABLED_POLICIES;

 

USER_NAMEPOLICY_NAME  ENABLED_OPT  SUCCES FAILUR

-------------------- -------------------- ---------------- ------ ------

ALL USERSORA_SECURECONFIG BY   YESYES

ALL USERSORA_LOGON_FAILURES   BY   NO YES

 

4.        刪除審計策略

SQL> DROP AUDIT POLICY UP1;

 

SQL> select POLICY_NAME,AUDIT_OPTION_TYPE,OBJECT_NAME,COMMON from AUDIT_UNIFIED_POLICIES where POLICY_NAME = upper('up1');

 

注意:在刪除某審計策略之前,必須禁用掉該審計策略,否則會報 ORA-46361 錯誤。

SQL> DROP AUDIT POLICY UP1;

DROP AUDIT POLICY UP1

*

 1  行出現錯誤 :

ORA-46361:  當前已啟用審計策略 因此無法刪除此策略。

 

AUDIT_UNIFIED_POLICIES 用於確認資料庫內所有的審計策略的詳細

AUDIT_UNIFIED_ENABLED_POLICIES 用於確認現在有效的審計策略

關於統一審計的動態檢視和字典表的詳細,可以參考以下官方線上文件,

三、     審計記錄結果

以前的審計功能,不同的元件會放在不同的位置儲存,例如:

·           SYS.AUD$ 會存放資料庫的標準審計結果

·           SYS.FGA_LOG$  會存放細粒度審計結果( fine-grained auditing

·           DVSYS.AUDIT_TRAIL$ 會存放 Oracle Database Vault Oracle Label Security 等元件的審計結果,等等。。。

在統一審計功能下,儲存和檢視更加簡單化,所有的審計結果都存放在新追加的 AUDSYS schema 下,並可以透過字典表 UNIFIED_AUDIT_TRAIL ,進行確認。

SQL> col OS_USERNAME format a15

SQL> col SQL_TEXT format a30

SQL> COL AUDIT_TYPE format a10

SQL> col  ACTION_NAME format a10

SQL> col UNIFIED_AUDIT_POLICIES  format a10

SQL>  select AUDIT_TYPE,OS_USERNAME,TERMINAL,ACTION_NAME,

  2  SQL_TEXT,UNIFIED_AUDIT_POLICIES

  3   from UNIFIED_AUDIT_TRAIL where OBJECT_NAME='EMP';

 

AUDIT_TYPE OS_USERNAME TERMINAL ACTION_NAM SQL_TEXT   UNIFIED_AU

---------- --------------- -------------------------------- ---------- ------------------------------ ----------

Standard   XXXX-CN\walt   XXXX-CN SELECT SELECT COUNT(*) FROM scott.emp UP1

 

四、     審計資料儲存

<1span "=""> 我們知道,從 12c 開始,統一審計( Unified Auditing )的審計資料都是存放在 AUDSYS schema  下。   首先,我們看一看 AUDSYS schema 下的儲存物件都有哪些內容。(以下為 12.1.0.2 環境的出力)

SQL> set pagesize 200

SQL> set linesize 200

SQL> col OWNER format a10

SQL> col SEGMENT_NAME format a25

SQL> col SEGMENT_TYPE format a20

SQL> col PARTITION_NAME format a20

SQL>  select OWNER,SEGMENT_NAME,SEGMENT_TYPE,PARTITION_NAME,bytes/1024/1024 "sizeMB"

  2   from DBA_SEGMENTS

  3   where OWNER='AUDSYS';

 

OWNER      SEGMENT_NAME              SEGMENT_TYPE         PARTITION_NAME  sizeMB

---------- ------------------------- -------------------- -------------- -------

AUDSYS     SYS_LOB0000092724C00014$$ LOB PARTITION        SYS_LOB_P201     1.125

AUDSYS     SYS_IL0000092724C00014$$  INDEX PARTITION      SYS_IL_P202      .0625

AUDSYS     CLI_LOB$1182c349$1$1      INDEX PARTITION      HIGH_PART        .0625

AUDSYS     CLI_TIME$1182c349$1$1     INDEX PARTITION      HIGH_PART        .0625

AUDSYS     CLI_SCN$1182c349$1$1      INDEX PARTITION      HIGH_PART        .0625

AUDSYS     CLI_SWP$1182c349$1$1      TABLE PARTITION      HIGH_PART       .125

 

已選擇  6  行。

SQL> set pages 0

SQL> set longchunksize 3000

SQL> set long 2000000000

SQL> select dbms_metadata.get_ddl('TABLE','CLI_SWP$1182c349$1$1','AUDSYS') from dual;

SQL> select dbms_metadata.get_ddl('INDEX','CLI_TIME$1182c349$1$1','AUDSYS') from dual;

SQL> select dbms_metadata.get_ddl('INDEX','CLI_SCN$1182c349$1$1','AUDSYS') from dual;

SQL> select dbms_metadata.get_ddl('INDEX','CLI_LOB$1182c349$1$1','AUDSYS') from dual;

SQL> select dbms_metadata.get_ddl('INDEX','SYS_IL0000092724C00014$$','AUDSYS') from dual;

SQL> col TABLE_NAME format a30

SQL> col SEGMENT_NAME format a30

SQL> col COLUMN_NAME format a30

SQL> set linesize 200

SQL>  select OWNER,TABLE_NAME,SEGMENT_NAME,COLUMN_NAME

  2   from DBA_LOBS

  3   where SEGMENT_NAME='SYS_LOB0000092724C00014$$';

 

OWNER  TABLE_NAME SEGMENT_NAME   COLUMN_NAME

---------- ------------------------------ ------------------------------ --------------

AUDSYS CLI_SWP$1182c349$1$1   SYS_LOB0000092724C00014$$  LOG_PIECE

 

SQL> col OWNER format a20

SQL> col TABLESPACE_NAME format a10

SQL> col COLUMN_NAME format a10

SQL> select owner, table_name, column_name, tablespace_name,

  2  segment_name,securefile, partitioned from

  3  dba_lobs where table_name = 'CLI_SWP$1182c349$1$1';

 

OWNER  TABLE_NAME   COLUMN_NAM TABLESPACE SEGMENT_NAME SECURE PARTIT

------ -------------------- ---------- ---------- ------------------------ ------  ---

AUDSYS CLI_SWP$1182c349$1$1 LOG_PIECE  SYSAUX SYS_LOB0000092724C00014$$ YESYES

 

根據各個資料段的 DDL 定義,我們可以看到以下內容:

·           資料段包括三種型別的物件,分別是分割槽表,分割槽索引和大資料段

·           索引物件 CLI TIME$XXXX 是表 CLI SWP$XXXX 的列 ("MIN TIME", "FLUSH SCN", "BUCKET#") 上的索引

·           索引物件 CLI SCN$XXXX 是表 CLI SWP$XXXX 的列 ("MIN SCN", "FLUSH SCN", "BUCKET#") 上的索引

·           索引物件 CLI LOB$XXXX 是表 CLI SWP$XXXX 的列 ("FLUSH SCN", "INST LOB#", "BUCKET#") 上的索引

·           索引物件 SYS ILXXXX 是表 CLI SWP$XXXX 的列 ("FLUSH SCN", "INST LOB#", "BUCKET#") 上的索引

·           大資料物件 SYS LOB 是表 CLI SWP$XXXX LOB LOG_PIECE 的儲存,並且是 securefile LOBs 型別。

·           預設所有的資料儲存在 SYSAUX 表空間中

由此,我們知道統一審計( Unified Auditing )的審計資料都是存放在 AUDSYS schema  下的表 CLI_SWP$XXXX 中,   並且有一部分資料是存放在 Lob 中的。

例:

1.        刪除不需要的審計資料

SQL> exec DBMS_AUDIT_MGMT.FLUSH_UNIFIED_AUDIT_TRAIL;

 

SQL> BEGIN

  2 DBMS_AUDIT_MGMT.CLEAN_AUDIT_TRAIL(

  3   AUDIT_TRAIL_TYPE   =>  DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED,

  4   USE_LAST_ARCH_TIMESTAMP=>  FALSE,

  5   CONTAINER  => dbms_audit_mgmt.container_current);

  6  END;

  7  /

 

PL/SQL  過程已成功完成。

 

禁用預設審計策略:

SQL> noaudit policy ORA_SECURECONFIG;

Noaudit succeeded.

SQL> noaudit policy ORA_LOGON_FAILURES;

Noaudit succeeded.

 

另外,審計記錄相關的 MOS doc

DBMS_AUDIT_MGMT does not release the space occupied by LOB segment (Doc ID 1935169.1)

>In Oracle Database 12c Standard Edition,audit trail clean up does not release the LOB segment space.

Bug 18109788  - CLEANUP OF UNIFIED AUDIT TRAIL DOES NOT RELEASE LOB SEGMENT SPACE

>Base Bug 20077418

 

2.        查詢 AUDSYS schema 的統計資訊

12.1.0.1 的版本中,由於非公開 Bug16767759 的影響,檢視 V$SYSAUX_OCCUPANTS 中無法檢視到 AUDSYS schema 的統計資訊。 12.1.0.2 中已經得到改善

SQL> select distinct schema_name from v$sysaux_occupants;

我們也可以透過查詢 DBA_SEGMENTS 來確認相關資料的大小。

SQL>   select owner, segment_name, sum(bytes/1024/1024/1024) "sizeGB"

  2  from dba_segments

  3 where tablespace_name='SYSAUX' and owner='AUDSYS'

  4 group by owner, segment_name;

 

OWNERSEGMENT_NAME   sizeGB

-------------------- ------------------------------ ----------

AUDSYS   CLI_TIME$1182c349$1$1  .000061035

AUDSYS   SYS_IL0000092724C00014$$   .000061035

AUDSYS   CLI_SWP$1182c349$1$1   .000061035

AUDSYS   SYS_LOB0000092724C00014$$   .00012207

AUDSYS   CLI_LOB$1182c349$1$1   .000061035

AUDSYS   CLI_SCN$1182c349$1$1   .000061035

 

已選擇  6  行。


六、    審計記錄寫入 AUDSYS 的模式

1.       審計記錄寫入 AUDSYS 的模式簡介

統一審計的審計結果寫到資料檔案中的方式主要有 2 種,佇列寫入模式 (Queued-write mode) 和立即寫模式 (Immediate-write mode) 。關於這兩種寫的方式,我們可以參考下面的 2 個圖。

立即寫模式 (Immediate-write mode) :同步寫入方法,統一審計的審計結果生成後,直接寫入到 AUDSYS schema 的審計表 CLI_SWP$XXXX 中。

佇列寫入模式 (Queued-write mode) :非同步寫入方法,統一審計的審計結果生成後,先把統一審計的審計結果儲存在 SGA 中稱為 [SGA Queue] 的佇列中,然後週期性地從 SGA Queue 寫入到 AUDSYS schema 的審計表 CLI_SWP$XXXX 中(關於儲存可以參看上一章的內容)。這種方式是資料庫預設採用的設定。

 

Ø   立即寫模式 (Immediate-write mode) 介紹

是一種同步寫入的方法,這種模式和 12c 以前傳統的審計結果寫入磁碟方式一樣,在生成審計結果的同時立即寫入到磁碟中,所以優點是不會因為例項突然崩潰( Instance Crash )等導致審計資料的丟失。但另一方面,因為操作和審計磁碟寫同時進行,會對資料庫操作的效能產生一定的影響。

l   佇列寫入模式 (Queued-write mode) 介紹

如上圖所示,統一審計的審計結果生成後,儲存在 SGA 中稱為 [SGA Queue] 的佇列中,滿足以下的任何一個條件時由後臺程式 GEN0 負責寫入到磁碟中。

·          達到重新整理時間間隔 , 預設值為 3

·          達到 [SGA Queue] 佇列的臨界值

[SGA Queue] 的佇列大小由初始化引數 UNIFIED_AUDIT_SGA_QUEUE_SIZE 來決定 , 預設大小為 1M ,可設定的範圍為 1MB ~ 30 MB

 

 SQL> show parameter UNIFIED_AUDIT

  NAME                            TYPE      VALUE

  ------------------------------- --------- -----------

  unified_audit_sga_queue_size    integer   1048576

參考:   UNIFIED_AUDIT_SGA_QUEUE_SIZE

對於統一審計( Unified Auditing )相關的設定引數,我們可以透過以下的方法檢視。

例:

 SQL> col Description format a26

  SQL> col Parameter format a30

  SQL> select a.ksppinm "Parameter",a.KSPPDESC "Description",

    2         b.ksppstvl "Value"

    3  from sys.x$ksppi a, sys.x$ksppcv b

    4  where a.indx = b.indx and a.ksppinm like '%unified_audit%';

 

  Parameter                      Description                 Value

  ------------------------------ --------------------------  --------

  _unified_audit_policy_disabled Disable Default Unified Au  FALSE

                                 dit Policies on DB Create

 

  unified_audit_sga_queue_size    Size of Unified audit SGA   1048576

                                 Queue                    

 

  _unified_audit_flush_threshold Unified Audit SGA Queue Fl  85

                                 ush Threshold               

 

  _unified_audit_flush_interval   Unified Audit SGA Queue Fl  3 

                                 ush Interval

由以上我們可以看到,

·          後臺程式GEN0的SGA Queue重新整理間隔是由隱含引數_unified_audit_flush_interval來控制的,預設值為3秒。

·          [SGA Queue] 佇列的臨界值是由隱含引數_unified_audit_flush_threshold來控制的,預設值為[SGA Queue]佇列大小的85% 即:UNIFIED_AUDIT_SGA_QUEUE_SIZE * 85% 。

統一審計的審計結果儲存在SGA中稱為[SGA Queue]的佇列中,然後週期性地從SGA Queue寫入到AUDSYS schema 的審計表CLI_SWP$XXXX中,所以佇列寫入模式的優點是可以最大限度地減少由於審計對資料庫操作效能的影響,但是由於是非同步寫入的方式,所以因為例項突然崩潰(Instance Crash)或者SHUTDOWN ABORT等情況下,有可能導致在SGA中的審計資料的丟失。

當然,除了由後臺程式自動進行磁碟寫入以外,也可以手動地調DBMS_AUDIT_MGMT.FLUSH_UNIFIED_AUDIT_TRAIL 函式,把SGA Queue中的統一審計的審計資料重新整理到AUDSYS schema 的審計表CLI_SWP$XXXX中。

例:

SQL> audit all;

SQL> noaudit all;

SQL>  EXEC DBMS_AUDIT_MGMT.FLUSH_UNIFIED_AUDIT_TRAIL;

 

2.       審計記錄寫入模式的設定

可以透過DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_PROPERTY函式,對資料庫預設的寫入模式進行修改。 需要注意的是,該設定僅對當前的CDB或PDB有效。

例:

設定立即寫模式 (Immediate-write mode)

SQL> BEGIN

  2   DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_PROPERTY(

  3      DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED,

  4      DBMS_AUDIT_MGMT.AUDIT_TRAIL_WRITE_MODE,

  5      DBMS_AUDIT_MGMT.AUDIT_TRAIL_IMMEDIATE_WRITE);

  6  END;

  7  /

 

# 確認寫入模式

SQL> SELECT PARAMETER_VALUE

  2  FROM DBA_AUDIT_MGMT_CONFIG_PARAMS

  3  WHERE PARAMETER_NAME = 'AUDIT WRITE MODE';

 

PARAMETER_VALUE

-------------------------------------------------

IMMEDIATE WRITE MODE

 

設定佇列寫入模式 (Queued-write mode):

SQL> BEGIN

  2   DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_PROPERTY(

  3      DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED,

  4      DBMS_AUDIT_MGMT.AUDIT_TRAIL_WRITE_MODE,

  5      DBMS_AUDIT_MGMT.AUDIT_TRAIL_QUEUED_WRITE);

  6  END;

  7  /

 

# 確認寫入模式

SQL> SELECT PARAMETER_VALUE

  2  FROM DBA_AUDIT_MGMT_CONFIG_PARAMS

  3  WHERE PARAMETER_NAME = 'AUDIT WRITE MODE';

 

PARAMETER_VALUE

-------------------------------------------------

QUEUED WRITE MODE

 

參考:   Database Security Guide

Setting the Write Mode for Unified Audit Trail Records

 

3.       審計資料無法寫入時的處理

大家可能已經注意到佇列寫入模式圖的右下角的部分。   這一部分是指當無法向資料庫寫入統一審計的審計資料時(如:資料庫正在關閉或者變成了只讀模式等),為了防止審計資料的丟失, Oracle 會把審計資料寫入到系統的如下檔案中( nn 為隨機數值)。

$ORACLE_BASE/audit/$ORACLE_SID/ora_audit_nn.bin

但資料庫恢復到正常時,可以透過以下的 Procedure 呼叫,把這些系統檔案再匯入到 AUDSYS schema 下的 CLI_SWP$XXXX 統一審計的儲存表中。

EXEC DBMS_AUDIT_MGMT.LOAD_UNIFIED_AUDIT_FILES;

當這些系統檔案匯入到資料庫中後,相應的檔案會自動地被刪除掉。

※另外,這裡需要注意的是,當有大量儲存檔案時,利用 Procedure 向資料庫匯入統一審計結果,可能會影響到效能。

參考:

1.    【Unified Auditing】Oracle 12c 統一審計基礎介紹

https://blog.csdn.net/lukeUnique/article/details/49385853

2.    【Unified Auditing】統一審計的儲存架構體系

https://blog.csdn.net/lukeUnique/article/details/49454161

3.    【Unified Auditing】統一審計的程式架構體系

https://blog.csdn.net/lukeUnique/article/details/49531111

4.    Database Security Guide--23 Administering the Audit Trail

The UNIFIED_AUDIT_TRAIL is Getting Populated even if Unified Auditing was not explicitly enabled in 12c (Doc ID 1624051.1)

Bug 20625589 : NOT DELETE AUDITS CORRECTLY BY DBMS AUDIT MGMT.CREATE PURGE JOB

Bug 19579469 - HANDLE SECUREFILES SPACE CLEANUP IN STANDARD EDITION DATABASE

5.    【Security】傳統審計(Traditional Auditing)

https://blog.csdn.net/lukeUnique/article/details/51871507

6.    【Security】資料庫審計(AUDIT)功能概述

https://blog.csdn.net/lukeUnique/article/details/51871415

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16976507/viewspace-2637129/,如需轉載,請註明出處,否則將追究法律責任。

相關文章