PolarDB PostgreSQL版(兼容Oracle)支持pgAudit插件,提供生成審計日志的能力,這些日志通常需要符合政府、金融或ISO認證。通過審計日志,用戶可以對數據庫進行故障分析、行為分析等操作,有效的幫助您獲取數據的執行情況。
注意事項
審計日志需要通過SQL洞察功能查看。
pgaudit
插件只提供過濾當前已有審計日志的功能。設置插件參數需要高權限賬號。
使用指南
安裝插件
CREATE EXTENSION pgaudit;
審計讀相關操作
執行以下命令,設置審計pgaudit_testdb
數據庫下的所有讀操作。
ALTER DATABASE pgaudit_testdb SET pgaudit.log = 'READ';
設置完成后,pgaudit_testdb
數據庫中的所有讀操作(例如SELECT
)都會被審計。INSERT
、UPDATE
等寫操作不會被審計。
審計讀寫相關操作
執行以下命令,設置審計pgaudit_testdb
數據庫下所有的讀寫操作。
ALTER DATABASE pgaudit_testdb SET pgaudit.log = 'READ,WRITE';
設置完成后,pgaudit_testdb
數據庫中所有的讀寫操作(例如SELECT
、INSERT
、UPDATE
)都會被審計。
關閉審計設置
ALTER DATABASE pgaudit_testdb SET pgaudit.log = 'NONE';
審計指定對象的相關操作
執行以下命令,設置審計pgaudit_testdb
數據庫所使用的用戶,并創建一張表,將該表的所有權限賦予該用戶。
CREATE USER audit_role;
ALTER DATABASE pgaudit_testdb SET pgaudit.role = 'audit_role';
CREATE TABLE test_audit (id INT);
GRANT ALL ON test_audit TO audit_role;
設置完成后,pgaudit_testdb
數據庫中只有對test_audit
表的所有操作會被審計,對其他表的操作不會被審計。
卸載插件
DROP EXTENSION pgaudit;
相關參考
pgAudit的詳細說明,請參考pgAudit官方文檔。
文檔內容是否對您有幫助?