SQL Server 資料庫稽核設定 (SQL Server Audit Setup)


  1. 說明
    1. 新增稽核
    2. 伺服器層級的稽核設定
    3. 資料庫層級的稽核設定
    4. 檢視稽核紀錄
  2. 範例說明

筆記如何啟用 SQL Server 的資料庫稽核功能,發現異常行為的方式。

SQL Server Logo

說明

新增稽核

首先要由整個伺服器層級的地方新增一個「稽核」,這個稽核是用於定義蒐集到的稽核紀錄如何儲存,選項包含檔案、Windows Security Event / Windows Application Event。


完成稽核的建立後,必須要啟用才可以紀錄才能夠被保存。

伺服器層級的稽核設定

實際要稽核的內容分為伺服器層級資料庫層級,伺服器層級包含資料備份、登入登出等行為,由「安全性」選擇「伺服器稽核規格」進行設定。較需要費神理解的是想要稽核的動作是屬於那一個動作類型。



完成「伺服器稽核規格」設定後,一樣需要啟動才會開始進行稽核。需要注意的是「伺服器稽核規格」與「稽核」都必須要同時啟動,才能夠正確紀錄。

資料庫層級的稽核設定

另外再資料庫層級也有特定的動作類型,差別在於資料庫層級的設定必須明確指明要稽核的物件類別、結構描述及名稱,同時必須明確指定要稽核的主體名稱(Login Name)。而在大量設定的時候 GUI 不太方便,例如要針對所有的 Table 對於 Login1 進行稽核。這個時候可以利用指令碼編輯的方式來完成。過程中可能會搭配 sys.table 來產生指令碼。


完成「資料庫稽核規格」設定後,一樣需要啟動才會開始進行稽核。需要注意的是「資料庫稽核規格」與「稽核」都必須要同時啟動,才能夠正確紀錄。

檢視稽核紀錄

範例說明

規劃示範說明如何稽核特定主體(Login)在特定資料庫中,所有對資料表的 SELECT 以及 UPDATE 行為。

規劃示範說明如何稽核所有主體,對於特定資料庫進行 DELETE 行為。