Sql-Server

SQL Server:誰創建了審計,誰最後修改了它?

  • November 28, 2020

我試圖找出誰創建了審計(在審計下找到),但我似乎沒有任何運氣。我已經嘗試了許多查詢,例如:

部落格 1部落格 2部落格 3

SELECT *
FROM   [sys].[objects]
SELEcT * FROM sys.server_audits

它們似乎適用於所有其他對象,但不適用於審計。我需要知道哪個使用者創建了審核以及哪個使用者最後更改了它。sys.server_audits沒有幫助。

跟踪不是數據庫級別的對象,因此您正在閱讀的那些查詢都沒有任何機會。但是,預設跟踪在事件 117(AUDIT CHANGE AUDIT EVENT

DECLARE @path NVARCHAR(260);

SELECT 
  @path = REVERSE(SUBSTRING(REVERSE([path]), 
  CHARINDEX(CHAR(92), REVERSE([path])), 260)) + N'log.trc'
FROM    sys.traces
WHERE   is_default = 1;

SELECT * 
 FROM sys.fn_trace_gettable(@path, DEFAULT)
 WHERE EventClass = 117
 ORDER BY StartTime DESC;

您可能還想檢查伺服器審計規範是否映射到審計以及是否包含 AUDIT_CHANGE_GROUP 操作類型。結果,對審計和/或其狀態的最後修改可能最終被記錄在審計文件中。

引用自:https://dba.stackexchange.com/questions/233414