使用 Transact-SQL 建立和管理稽核
使用 Management Studio 或 Transact-SQL 執行 Transact-SQL 資料定義語言 (DDL) 語句、動態管理檢視和功能或目錄檢視,可以針對 SQL Server 環境建立簡單或複雜的 SQL Server 稽核解決方案。
本部分內容
如何建立伺服器級稽核
如何建立資料庫級別稽核
參考主題
可以使用 DDL 語句、動態管理檢視和函式以及目錄檢視來實現 SQL Server Audit 的所有方面。
許可權
SQL Server Audit 的每一個功能和命令都有其獨特的許可權需求。
若要建立、更改或刪除伺服器稽核或伺服器稽核規範,伺服器主體要求具有 ALTER ANY SERVER AUDIT 或 CONTROL SERVER 許可權。若要建立、更改或刪除資料庫稽核規範,資料庫主體必須對該資料庫具有 ALTER ANY DATABASE AUDIT 許可權或 ALTER 或 CONTROL 許可權。此外,主體還必須具有連線到資料庫的許可權,或 ALTER ANY SERVER AUDIT 或 CONTROL SERVER 許可權。
除非另有規定,否則主體具有以下身份或許可權之一才能檢視目錄檢視:
sysadmin 固定伺服器角色成員。
CONTROL SERVER 許可權。
VIEW SERVER STATE 許可權。
ALTER ANY AUDIT 許可權。
VIEW AUDIT STATE 許可權(僅允許主體訪問 sys.server_audits 目錄檢視)。
若要使用動態管理檢視,主體必須具有 VIEW SERVER STATE 或 ALTER ANY AUDIT 許可權。
有關如何授予許可權的詳細資訊,請參見 GRANT (Transact-SQL)。
注意:
具有 sysadmin 角色的主體可以篡改任意稽核元件;具有 db_owner 角色的主體可以篡改資料庫中的稽核規範。SQL Server 稽核將驗證建立或更改稽核規範的登入帳戶是否至少具有 ALTER ANY DATABASE AUDIT 許可權。但在您附加資料庫時,將不進行驗證。應只採用可信度相當於 sysadmin 或 db_owner 角色的主體的所有資料庫稽核規範。
資料定義語言語句
可以使用下列 DDL 語句建立、更改和刪除稽核規範。
ALTER AUTHORIZATION (Transact-SQL)
ALTER DATABASE AUDIT SPECIFICATION (Transact-SQL)
ALTER SERVER AUDIT (Transact-SQL)
ALTER SERVER AUDIT SPECIFICATION (Transact-SQL)
CREATE DATABASE AUDIT SPECIFICATION (Transact-SQL)
CREATE SERVER AUDIT (Transact-SQL)
CREATE SERVER AUDIT SPECIFICATION (Transact-SQL)
DROP DATABASE AUDIT SPECIFICATION (Transact-SQL)
DROP SERVER AUDIT (Transact-SQL)
DROP SERVER AUDIT SPECIFICATION (Transact-SQL)
動態檢視和函式
下表列出了可用於 SQL Server 稽核的動態檢視和函式。
sys.dm_audit_actions (Transact-SQL)
為可在稽核日誌中報告的每項稽核操作以及可配置為 SQL Server Audit 一部分的每個稽核操作組返回一行。
sys.dm_server_audit_status (Transact-SQL)
提供有關當前稽核狀態的資訊。
sys.dm_audit_class_type_map (Transact-SQL)
返回一個表,將稽核日誌中的 class_type 欄位對映到 sys.dm_audit_actions 中的 class_desc 欄位。
fn_get_audit_file (Transact-SQL)
從由伺服器稽核建立的稽核檔案返回資訊。
目錄檢視
下表列出了可用於 SQL Server 稽核的目錄檢視。
sys.database_ audit_specifications (Transact-SQL)
包含針對伺服器例項的 SQL Server 稽核中的資料庫稽核規範的資訊。
sys.database_audit_specification_details (Transact-SQL)
包含針對所有資料庫的伺服器例項的 SQL Server 稽核中的資料庫稽核規範的資訊。
sys.server_audits (Transact-SQL)
針對伺服器例項中每個 SQL Server 稽核各顯示一行。
sys.server_audit_specifications (Transact-SQL)
包含有關伺服器例項上 SQL Server 稽核中的伺服器稽核規範的資訊。
sys.server_audit_specifications_details (Transact-SQL)
包含針對伺服器例項的 SQL Server 稽核中的伺服器稽核規範詳細資訊(操作)的資訊。
sys.server_file_audits (Transact-SQL)
包含針對伺服器例項的 SQL Server 稽核中的檔案稽核型別的儲存擴充套件資訊。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16436858/viewspace-503174/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- iOS App稽核狀態和稽核時間管理指南iOSAPP
- 使用Executors建立和管理執行緒執行緒
- decimal 和 numeric (Transact-SQL)DecimalSQL
- Java:使用Executors建立和管理執行緒薦Java執行緒
- 2 Day DBA-使用DBCA建立和管理資料庫—使用DBCA建立資料庫資料庫
- 2 Day DBA-使用DBCA建立和管理資料庫資料庫
- 使用DBMS_JOB和DBMS_SCHEDULER建立、管理job示例
- RAISERROR (Transact-SQL)AIErrorSQL
- 基礎知識6——建立和管理使用者賬戶
- SQL 基礎-->建立和管理表SQL
- 建立和使用 WebAssembly 元件Web元件
- Oracle建立和使用序列Oracle
- OCP課程11:SQL之使用DDL語句建立和管理表SQL
- 配置檔案管理器DBMS_PROFILER建立和使用指南
- SQL稽核 | “雲上”使用者可以一鍵使用 SQLE 稽核服務啦!SQL
- 2 Day DBA-使用DBCA建立和管理資料庫—啟動DBCA資料庫
- SQL稽核 | 如何使用 SQLE 進行開發階段 SQL稽核SQL
- 2 Day DBA-管理Oracle例項-管理使用者帳戶和安全-練習:建立使用者NICKOracle
- optee記憶體管理和頁表建立記憶體
- 基礎知識6——建立和管理角色
- Transact-SQL處理小數SQL
- 保留關鍵字 (Transact-SQL)SQL
- Sql Server系列:Transact-SQL概述SQLServer
- Transact-SQL 系統變數SQL變數
- SQL稽核 | 如何快速使用 SQLE 稽核各種型別的資料庫SQL型別資料庫
- 如何使用IPFS和Filecoin建立NFT
- 如何使用Kubernetes Cluster API和ArgoCD建立和管理多個Kubernetes叢集 - PiotrAPIGo
- 《HiWind企業快速開發框架實戰》(3)使用HiWind建立和管理選單框架
- Python虛擬環境的建立和管理Python
- 使用MQSI命令建立代理,佇列管理器MQ佇列
- Nuxt Kit 的使用指南:模組建立與管理UX
- PLSQL來Oracle建立表空間和建立使用者SQLOracle
- 內容稽核統一管控!網易易盾智慧稽核管理系統開放試用
- Sql Server系列:Transact-SQL變數SQLServer變數
- 用 Transact-SQL 語句監視SQL
- Git 碼雲--建立和使用記錄Git
- ubuntu 建立和刪除使用者Ubuntu
- MySQL建立使用者和授權MySql