Oracle 統一審計- Best 實踐三
繼上一篇,我們繼續學習Oracle 統一審計
四 審計系統許可權
可以使用CREATE AUDIT POLICY語句對系統許可權進行審計。
4.1關於系統許可權審計
系統許可權審計對成功使用系統許可權(如READ ANY TABLE)的活動進行審計。
在這種審計中,需要審計許可權才能成功的SQL語句將被記錄下來。
一個統一的審計策略可以同時包含特權審計選項和操作審計選項。不要審計管理使用者(如SYS)的許可權使用情況。相反,審計它們的物件操作。
注意:
單個查詢可以生成多個審計記錄,對於查詢中正在訪問的每個物件都有一個審計記錄,如果對所有這些物件都啟用了審計。例如,當您查詢檢視時,可以為檢視本身引用的每個底層物件生成多個審計記錄
注意:
您可以審計系統特權、物件、資料庫事件等等。但是,如果您必須查詢資料庫特權的使用情況(例如,已授予給定角色的哪些特權被使用),並生成已使用和未使用特權的報告,那麼您可以建立特權捕獲
4.2可以審計的系統許可權
我們可以審計幾乎所有系統特權的使用情況。要查詢可審計的系統特權列表,可以查詢SYSTEM_PRIVILEGE_MAP表。
如下方式:
SELECT NAME FROM SYSTEM_PRIVILEGE_MAP;
NAME
-------------
ALTER ANY CUBE BUILD PROCESS
SELECT ANY CUBE BUILD PROCESS
ALTER ANY MEASURE FOLDER
...
與操作審計選項類似,特權審計對已授予資料庫使用者的系統特權的使用情況進行審計。如果為SQL語句和特權審計設定了類似的審計選項,那麼只會生成一條審計記錄。例如,如果存在兩個策略,其中一個審計EXECUTE PROCEDURE專門針對HR。程式和第二次稽核一般執行程式(所有程式),則只寫一條稽核記錄。
如果操作已被現有所有者和物件特權允許,則不會發生特權審計。特權審計只有在特權不足時才會觸發,也就是說,只有當使操作成為可能的是系統特權時才會觸發。例如,假設使用者SCOTT被授予SELECT ANY TABLE特權,並且SELECT ANY TABLE正在被審計。如果SCOTT選擇他自己的表(例如SCOTT. emp),則不會使用SELECT ANY table特權。因為他在自己的模式中執行SELECT語句,所以沒有生成審計記錄。另一方面,如果SCOTT從另一個模式(例如,HR。EMPLOYEES表),然後生成一條審計記錄。因為SCOTT選擇了他自己模式之外的表,所以他需要使用SELECT ANY table特權。
4.3 無法審計的系統許可權
無法審計若干系統特權。這些特權是:
INHERIT ANY PRIVILEGE
INHERIT PRIVILEGE
TRANSLATE ANY SQL
TRANSLATE SQL
4.4配置統一審計策略捕獲系統許可權使用情況
CREATE AUDIT POLICY語句中的PRIVILEGES子句審計系統特權的使用情況。
使用以下語法建立一個統一的審計策略,對許可權進行審計:
CREATE AUDIT POLICY policy_name
PRIVILEGES privilege1 [, privilege2];
For example:
CREATE AUDIT POLICY my_simple_priv_policy
PRIVILEGES SELECT ANY TABLE, CREATE LIBRARY;
我們可以構建更復雜的特權統一審計策略,例如包含條件的審計策略。請記住,在建立策略之後,必須使用AUDIT語句來啟用它。
4.5 示例:審計具有ANY許可權的使用者
CREATE AUDIT POLICY語句可以審計使用者的任何許可權。
例27-3展示瞭如何審計使用者HR_MGR的幾個ANY許可權。
例27-3審計具有ANY許可權的使用者
CREATE AUDIT POLICY hr_mgr_audit_pol
PRIVILEGES DROP ANY TABLE, DROP ANY CONTEXT, DROP ANY INDEX, DROP ANY LIBRARY;
AUDIT POLICY hr_mgr_audit_pol BY HR_MGR;
4.6示例:使用條件審計系統許可權
CREATE AUDIT POLICY語句可以建立一個審計策略,該審計策略使用條件對系統許可權進行審計。
例27-4展示瞭如何使用一個條件來審計兩個作業系統使用者psmith和jrawlins使用的許可權。
例27-4使用條件審計系統許可權
CREATE AUDIT POLICY os_users_priv_pol
PRIVILEGES SELECT ANY TABLE, CREATE LIBRARY
WHEN 'SYS_CONTEXT (''USERENV'', ''OS_USER'') IN (''psmith'', ''jrawlins'')'
EVALUATE PER SESSION;
AUDIT POLICY os_users_priv_pol;
4.7系統許可權統一審計策略如何出現在審計跟蹤中
UNIFIED_AUDIT_TRAIL資料字典檢視列出了系統特權審計事件。
下面的示例以例27-4中建立的統一審計策略os_users_priv_pol為例,給出了作業系統使用者psmith所使用的許可權列表。
SELECT SYSTEM_PRIVILEGE_USED FROM UNIFIED_AUDIT_TRAIL
WHERE OS_USERNAME = 'PSMITH' AND UNIFIED_AUDIT_POLICIES = 'OS_USERS_PRIV_POL';
SYSTEM_PRIVILEGE_USED
----------------------
SELECT ANY TABLE
DROP ANY TABLE
注意:
如果為SELECT ANY TABLE系統特權建立了審計策略,則使用者是否行使了READ物件特權或SELECT物件特權將影響審計跟蹤捕獲的操作。
五 審計管理使用者
可審計的管理使用者帳戶
來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/26342786/viewspace-3006894/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 統一審計- Best 實踐一Oracle
- 【BEST】Oracle 資料庫19c配置最佳實踐Oracle資料庫
- Oracle 12c 統一審計(Unified Auditing)OracleNifi
- Oracle:審計清理Oracle
- Oracle審計(轉)Oracle
- oracle 11g 系統審計功能Oracle
- AI概要設計文件評審實踐AI
- ORACLE AUDIT審計(1)Oracle
- oracle 細粒度審計(fga)Oracle
- oracle審計-細粒度(轉)Oracle
- 聚合型程式碼審計工具QingScan使用實踐
- Oracle實現統計Oracle
- 實踐篇(三):如何有效評審軟體架構圖?架構
- openGauss-統一審計機制
- oracle fga審計(欄位級)Oracle
- oracle10g審計(轉)Oracle
- Oracle OCP(52):細粒度審計Oracle
- Oracle OCP(51):簡單審計Oracle
- Oracle OCP(50):審計簡介Oracle
- Oracle 12.2 RAC on Linux Best Practice DocumentationOracleLinux
- 【AUDIT]Oracle審計配置及常用sqlOracleSQL
- Semgrep結合GitLab實現程式碼審計實踐-服務端Gitlab服務端
- 程式碼審查或評審的最佳實踐 - FogBugz
- 審計系統的一劑良方——事件溯源事件
- Oracle資料庫審計功能介紹Oracle資料庫
- 資料安全治理及審計合規的最佳實踐XX
- 一些通過SAPABAP程式碼審查得出的ABAP程式設計最佳實踐程式設計
- vivo統一告警平臺設計與實踐
- 運維審計系統運維
- 日誌審計系統
- 一些通過SAP ABAP程式碼審查得出的ABAP程式設計最佳實踐程式設計
- Oracle Audit 審計功能的認識與使用Oracle
- [譯] 程式碼審查之最佳實踐
- Java程式碼審計篇 - ofcms系統審計思路講解 - 篇4 - XXE漏洞審計Java
- Oracle Linux 7使用syslog來管理Oracle ASM的審計檔案OracleLinuxASM
- 無埋點統計SDK實踐
- hadoop程式設計實踐(一)Hadoop程式設計
- Oracle Session每日統計功能實現XLAMOracleSession