使用 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
- 保留關鍵字 (Transact-SQL)SQL
- Transact-SQL處理小數SQL
- 如何使用Kubernetes Cluster API和ArgoCD建立和管理多個Kubernetes叢集 - PiotrAPIGo
- ClickHouse 建立管理員使用者
- SQL SERVER 日期和時間資料型別及函式 (Transact-SQL)SQLServer資料型別函式
- SQL稽核 | “雲上”使用者可以一鍵使用 SQLE 稽核服務啦!SQL
- Ceph 管理和使用
- Python虛擬環境的建立和管理Python
- optee記憶體管理和頁表建立記憶體
- SQL稽核 | 如何使用 SQLE 進行開發階段 SQL稽核SQL
- 如何使用IPFS和Filecoin建立NFT
- arj——用於建立和管理.arj壓縮包
- 使用Visual Studio 2022 建立lib和dll並使用
- MySQL建立使用者和授權MySql
- ubuntu 建立和刪除使用者Ubuntu
- Git 碼雲--建立和使用記錄Git
- Oracle建立使用者和授權Oracle
- React使用ProComponent建立表單和列表React
- SQL稽核 | 如何快速使用 SQLE 稽核各種型別的資料庫SQL型別資料庫
- 2.5.5 使用自動Undo管理: 建立 Undo 表空間
- Nuxt Kit 的使用指南:模組建立與管理UX
- Linux-使用者管理與建立邏輯卷Linux
- pixi的使用之建立和操作精靈
- oracle 建立表空間和使用者Oracle
- Oracle建立表空間和使用者Oracle
- Linux使用者的建立和刪除Linux
- 如何使用JavaFX和GraalVM建立移動App?JavaLVMAPP
- Python中類的建立和使用方法Python
- MySQL儲存過程的建立和使用MySql儲存過程
- NAS加密資料夾建立和使用教程加密
- 內容稽核統一管控!網易易盾智慧稽核管理系統開放試用
- 探究如何在Zoho Projects中建立和管理任務和子任務Project
- NAS上如何建立和使用加密資料夾?加密
- 使用 Python 和 Scribus 建立一個 RGB 立方體Python
- 動態連結庫(DLL)的建立和使用
- 使用wrangler建立hono和D1的Worker
- 使用 ASP.NET Core 和 MongoDB 建立 Web APIASP.NETMongoDBWebAPI
- 使用 Filament Panels 快速建立獸醫診所患者管理系統