Oracle

如何使用統一審核跟踪失敗的登錄嘗試

  • March 6, 2017

我啟動了一項ORA_LOGON_FAILURES政策並嘗試執行

從unified_audit_trail 中選擇*,其中unified_audit_policies = ‘ORA_LOGON_FAILURES’;

但它不起作用。我所有失敗的登錄嘗試都沒有經過審核。那麼我做錯了什麼?

您已啟用ORA_LOGON_FAILURES,但您是否正確啟用了統一審計?

使用預設的混合模式審核,設置audit_trail為,可防止在啟用的情況下審核none登錄失敗。ORA_LOGON_FAILURES

這是它在所有設置為預設值的情況下的工作方式(DB由 DBCA 設置的 audit_trail):

SQL> audit policy ora_logon_failures;

Audit succeeded.

SQL> select count(*) from unified_audit_trail 
    where unified_audit_policies = 'ORA_LOGON_FAILURES' and return_code = 1017;

 COUNT(*)
----------
        0

SQL> connect 1/1
ERROR:
ORA-01017: invalid username/password; logon denied


Warning: You are no longer connected to ORACLE.
SQL> connect / as sysdba
Connected.
SQL> select count(*) from unified_audit_trail
    where unified_audit_policies = 'ORA_LOGON_FAILURES' and return_code = 1017;

 COUNT(*)
----------
        1

此外,統一審計整體可以緩沖在 SGA 中,稍後而不是立即寫入磁碟,在這種情況下,在查詢之前手動刷新:

EXEC DBMS_AUDIT_MGMT.flush_unified_audit_trail;

不過,如果您正確配置了所有內容,您可能會遇到:

BUG 19383839 - 統一審核 - 未擷取登錄或登錄操作失敗

編輯:

好的,所以我必須自己測試它,否則我不會相信它。與文件所述(AUDIT_TRAIL)相反,即使在使用純統一審計時,將其設置audit_trail為也會產生影響。none但這不是故意的,這是一個錯誤。最新的 PSU (12.1.0.2.170117) 中不包含此修復程序,但安裝上述一次性更新檔 (19383839) 確實解決了該問題。問題是,此更新檔不適用於 Windows 平台。(我已經在 Linux 和 Windows 上對此進行了測試,因為在使用 Oracle 時,Windows 始終是您需要考慮的一個因素。)

設置audit_trailDB不會重新啟用混合模式,重新連結(重命名 DLL)會啟用純統一審計,並且會覆蓋它,您可以通過從AUD$或中選擇來確認這一點DBA_AUDIT_SESSION。所以我建議你設置audit_trailDB.

引用自:https://dba.stackexchange.com/questions/166252