亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

談一談Oracle11gR2的審計管理

發布時間:2020-09-02 03:53:01 來源:網絡 閱讀:8328 作者:zhqw8315 欄目:數據庫


談一談Oracle11gR2的審計管理

作者:趙全文 網名:guestart


談一談Oracle11gR2的審計管理


  在Oracle數據庫的安全特性當中,審計被作為特別重要的一個方面。數據庫的審計功能主要是用來審計各種類型的DDL和DML語句,而審計管理作為一項新特性被引進到Oracle的11g R1版本當中,此時它的審計功能并不強大而且還有許多bug,然而到了11gR2時,已經修復了很多bug及它的審計功能進一步增強。

  今天我和大家分享一下,在Oracle 11gR2的版本中,有關審計的一些特性。出于美國安全法,Oracle在11g 的版本對審計管理的策略有所改變,初始化參數AUDIT_TRAIL的默認值為'DB',也就是說把所有的審計數據都存放到AUD$表,而這個表又默認是在SYSTEM的表空間里。

  當我們在生產環境中部署一套Oracle數據庫以后,默認審計功能是開啟的,業務剛上線那段時間,數據量不大時,SYSTEM表空間的容量很寬裕,并沒有什么壓力。當業務運行了一段時間,突然有一天,前端應用就會反映說,數據庫特別慢。這時我們DBA對數據庫進行各種檢查,就會發現SYSTEM表空間的已用空間百分比為99.97%,這一點毫不夸張,我就親身經歷過。我們說這是事后救火,其實我們完全可以在上線前,把AUD$表遷移到其它的專門存放審計數據的表空間,在業務上線并運行一段時間之后,評估一下審計數據的數據量,然后設置審計數據的維護策略。

  下面,我們采取三種方法對Oracle數據庫的審計進行設置。嚴格的來說,是兩種方法,第一種更為粗暴,直接關閉審計功能,就是將初始化參數AUDIT_TRAIL的值設為'NONE',然后重啟數據庫使之生效;第二種和第三種是針對開啟數據庫審計功能的維護管理。在生產環境中,不建議使用第一種,因為關閉審計以后,數據庫出現安全隱患以后不利于排查分析。為了大家有所了解,我也一并演示操作。

  首先,查看數據庫的版本,我所演示的環境為Oracle 11.2.0.4.0。

談一談Oracle11gR2的審計管理

第一種方法,關閉審計功能。

談一談Oracle11gR2的審計管理

談一談Oracle11gR2的審計管理

第二種方法,把SYSTEM表空間里的AUD$表遷移到其它的表空間,以減輕SYSTEM表空間的壓力。

(1)查詢AUD$表所在的表空間

談一談Oracle11gR2的審計管理

(2)查詢AUD$表的數據量有多少,發現竟然有80多G

談一談Oracle11gR2的審計管理

(3)創建專門存放AUD$表的單獨的表空間AUDIT_TBS

談一談Oracle11gR2的審計管理

(4)遷移AUD$表到新的表空間AUDIT_TBS

使用Oracle自帶的包DBMS_AUDIT_MGMT中的存儲過程SET_AUDIT_TRAIL_LOCATION來實現,該存儲過程接受2個參數,順序依次是AUDIT_TRAIL_TYPE和AUDIT_TRAIL_LOCATION_VALUE,參見官方文檔的如下截圖,

談一談Oracle11gR2的審計管理


談一談Oracle11gR2的審計管理

其中參數AUDIT_TRAIL_TYPE有以下幾種取值,見官方文檔的如下截圖,

談一談Oracle11gR2的審計管理

各種取值的中文解釋如下:

AUDIT_TRAIL_ALL 所有的審計類型,包括標準數據庫審計、細粒度審計、操作系統審計和XML文件審計

AUDIT_TRAIL_AUD_STD 標準數據庫審計

AUDIT_TRAIL_DB_STD 標準數據庫審計和細粒度審計

AUDIT_TRAIL_FGA_STD 細粒度審計

AUDIT_TRAIL_FILES 操作系統和XML文件審計

AUDIT_TRAIL_OS 操作系統審計,審計數據存放在操作系統的文件里

AUDIT_TRAIL_XML XML文件審計,審計數據存放在XML文件里

在這里,我們使用標準數據庫審計,所以使用參數AUDIT_TRAIL_AUD_STD。

參數AUDIT_TRAIL_LOCATION_TYPE的取值是要遷移到的表空間的名字AUDIT_TBS,要執行的存儲過程如下圖所示,

談一談Oracle11gR2的審計管理

從中發現,執行了將近一個小時,才遷移完成。

此時,AUDIT_TBS表空間已有數據,SYSTEM表空間已經釋放,壓力減輕。見下圖所示,

談一談Oracle11gR2的審計管理


談一談Oracle11gR2的審計管理

第三種方法,上面雖然減輕了SYSTEM表空間的壓力,但是如果不對審計數據進行定時清除和歸檔這種維護管理的話,新的表空間的容量也會有不足的時候,因此也需要不定期的擴充容量才可以。顯然,這也不是個完美的解決辦法。下面給審計設置維護策略, 6 / 12

(1)查詢AUD$表的數據開始生成的時間戳,現在是2017年2月8日,說明審計數據已保留了將近8個月。

談一談Oracle11gR2的審計管理

(2)用Oracle自帶的包DBMS_AUDIT_MGMT中的存儲過程SET_AUDIT_TRAIL_PROPERTY設置審計的維護屬性,即每清除多少條數據提交一次。該存儲過程接受3個參數,順序依次是AUDIT_TRAIL_TYPE、AUDIT_TRAIL_PROPERTY和AUDIT_TRAIL_PROPERTY_VALUE。

其中參數AUDIT_TRAIL_TYPE的取值在第二種方法已說明,參數AUDIT_TRAIL_PROPERTY和AUDIT_TRAIL_PROPERTY_VALUE的取值見下面的官方文檔說明,

談一談Oracle11gR2的審計管理

這里,我們使用參數AUDIT_TRAIL_TYPE的取值為AUDIT_TRAIL_AUD_STD,參數AUDIT_TRAIL_PROPERTY的取值為DB_DELETE_BATCH_SIZE,參數AUDIT_TRAIL_PROPERTY_VALUE的取值為10000。那么執行下面的存儲過程,

談一談Oracle11gR2的審計管理

(3)用Oracle自帶的包DBMS_AUDIT_MGMT中的存儲過程INIT_CLEANUP設置審計數據保留的天數,該存儲過程接受2個參數,順序依次是AUDIT_TRAIL_TYPE和DEFAULT_CLEANUP_INTERVAL。見官方文檔的說明,其中參數DEFAULT_CLEANUP_INTERVAL的取值為1至999,單位為小時。

談一談Oracle11gR2的審計管理

用Oracle自帶的包DBMS_AUDIT_MGMT中的存儲過程SET_LAST_ARCHIVE_TIMESTAMP設置上次歸檔審計記錄的時間戳,該存儲過程接受2個參數,順序依次是AUDIT_TRAIL_TYPE、LAST_ARCHIVE_TIME和RAC_INSTANCE_NUMBER。見官文檔的說明,參數RAC_INSTANCE_NUMBER取默認值NULL,可以不寫。

談一談Oracle11gR2的審計管理

這里,我們設置審計數據保留的天數為30天,即720小時,上次歸檔審計記錄的時間戳為30天之前。那么執行下面的存儲過程,

談一談Oracle11gR2的審計管理

(4)用Oracle自帶的包DBMS_AUDIT_MGMT中的存儲過程CREATE_PURGE_JOB設置每隔多長時間清除審計數據的JOB,該存儲過程接受4個參數,順序依次是AUDIT_TRAIL_TYPE、AUDIT_TRAIL_PURGE_INTERVAL、AUDIT_TRAIL_PURGE_NAME和USE_LAST_ARCH_TIMESTAMP。見官方文檔的說明,

談一談Oracle11gR2的審計管理

這里,我們每隔7天,即168小時清除一次審計數據,那么設參數AUDIT_TRAIL_PURGE_INTERVAL的值為168,設參數USE_LAST_ARCH_TIMESTAMP的值為TRUE(也是默認值)。那么執行下面的存儲過程,

談一談Oracle11gR2的審計管理

同時,在EMCC 12C的監控界面下已經看到一個名叫“PURGE_AUD_STD”的JOB在運行,還有相應的SQL也在運行。見下圖,

談一談Oracle11gR2的審計管理


談一談Oracle11gR2的審計管理


談一談Oracle11gR2的審計管理

  由于上次以來沒有進行審計清理,現在保留了近8個月的數據,所以現在一次清理,只保留30天的數據會稍顯費時。不過執行完這次JOB,以后再清理歷史數據就不費吹灰之力了。

  上面就把三種維護審計的方法都介紹完了,我們演示的只是將審計數據保存在DB里,其實還可以保存在OS和XML里,不過我不建議這樣做,按照官方文檔來說,保存在DB里由Oracle進行維護會減少和OS通信的IO操作。

總結:

1.直接關閉審計,修改初始化參數AUDIT_TRAIL的值為NONE,并重啟數據庫生效;

2.將SYSTEM表空間中的AUD$表遷移到其它的表空間,以減輕SYSTEM表空間的壓力;

3.在第2種方法的基礎上,設置審計數據保留天數并定時清除過期的審計數據。


另外,本文在編寫過程中,參考了以下網址,特別說明

官方文檔 https://docs.oracle.com/cd/E18283_01/appdev.112/e16760/d_audit_mgmt.htm#BABDAHBG

oraclewiki http://www.oracle-wiki.net/startdocshowtomanageaudit

Laurent Leturgez https://laurent-leturgez.com/2011/06/09/managing-database-audit-trail-in-oracle-11gr2/

Suresh Karthikeyan https://www.pythian.com/blog/oracle-database-script-to-purge-aud-table-using-dbms_audit_mgmt-package/


  如果您覺得此篇文章對您有幫助,歡迎關注微信公眾號:guestartDBA學習筆記,您的支持是對我最大的鼓勵!

談一談Oracle11gR2的審計管理

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

孝昌县| 垫江县| 汉沽区| 无为县| 北票市| 铜山县| 井冈山市| 弋阳县| 多伦县| 宁津县| 清新县| 堆龙德庆县| 兴海县| 民勤县| 灵川县| 包头市| 林芝县| 上饶市| 新源县| 长宁区| 精河县| 响水县| 习水县| 南开区| 常山县| 南乐县| 连平县| 吐鲁番市| 娱乐| 行唐县| 湾仔区| 新乐市| 密云县| 高尔夫| 喀什市| 色达县| 紫阳县| 湖北省| 榆社县| 岳普湖县| 博白县|