close
實驗目標
利用SQL Server 2008_資料庫層級與伺服器層級稽核工具,紀錄Audit Object 異動情況
Exsample: 資料表被某位使用者修改(Insert,create,,delete....etc) , or 建立"登入"使用者
屬性備更改...etc 將被audit並記錄
屬性備更改...etc 將被audit並記錄
藉以提供給系統管理者做為檢視,除錯SQL之用,另有安全性考量
實驗環境
SQL Server 2008 * 1
[資料庫層級] (1.)點選伺服器(MIKE)樹狀目錄路徑: 安全性/稽核 --->新增稽核
接下來我們要定義此稽核設定:(此程序主要是設置儲存稽核檔案初始組態設定)
稽核名稱: 給予此稽核程序定義一個名稱
稽核目的地: 使用file方式儲存稽核紀錄
檔案路徑: 稽核紀錄實體存放資料夾指定
檔案上限: 限制此檔案最大值
*上述設置完成後_請手動啟用稽核* 讓起稽核ON起來
(2.)點選伺服器(MIKE)樹狀目錄路徑: 資料庫/Adventure Works /安全性/資料庫稽核規格
--->新增資料庫稽核規格
--->新增資料庫稽核規格
Adventure Works : 為KEYNES 選定稽核資料庫(請您修改符合您要稽核資料庫)
資料庫稽核規格 : 接下來我們要新增稽核物件細部規則
建立資料庫稽核規格
名稱: 給予此稽核規則一個名稱
稽核: 稽核log存放位置(先前步驟已定義過,故我們可以下拉選單選取)
稽核動作類型:
微軟在此定義多達數幾十個規則定義: 讓Admin 應需求選取所需稽核Object
微軟在此定義多達數幾十個規則定義: 讓Admin 應需求選取所需稽核Object
在此選擇SCHEMA_Object_Change_Group:
稽核當使用者對資料表進行(DDL) Create view ,Insert, Delete..等動作時紀錄log
*設置完成後,Don't For Get 啟用 DatabaseAudit_ADwork(右鍵->啟用稽核規格)*
預設此條例是不啟用,須手動啟用
(3.)測試資料庫稽核: 我們新增查詢撰寫以下SQL(建立檢視圖)
預設此條例是不啟用,須手動啟用
(3.)測試資料庫稽核: 我們新增查詢撰寫以下SQL(建立檢視圖)
--建立檢視圖:篩選出dbo.databaselog 此table 中
object 欄位 = 'Errorlog' 的紀錄
object 欄位 = 'Errorlog' 的紀錄
use AdventuteWorks
go
create view keynes_test as
select * from dbo.databaselog where objetc = 'Errorlog'
故意再把剛剛已建立View將其Drop掉
drop view keynes_test
最後來驗證事件是否有稽核成功
我們切換至 資料庫/安全性/稽核/Audit_ Adventure_Work
--->檢視稽核紀錄(也就是我們第一步建立稽核儲存點)
--->檢視稽核紀錄(也就是我們第一步建立稽核儲存點)
*酷吧!看到下圖,剛剛我們對資料表建立與刪除的紀錄很完善被稽核紀錄到此紀錄檔
一覽無遺,即時我們要的結果*
一覽無遺,即時我們要的結果*
(4.) [伺服器層級]: 點選伺服器(MIKE)樹狀目錄路徑: 安全性/稽核 --->新增稽核
(大致與設置資料庫層級稽核一樣)
(大致與設置資料庫層級稽核一樣)
點選伺服器(MIKE)樹狀目錄路徑: 資料庫/安全性/稽核/伺服器稽核規格 --->新增伺服器稽核規格
如同上述介紹[伺服器層級]一般:微軟亦自訂多款稽核物件供Admin稽核時選用
接者我們啟用"伺服器稽核規格"
最後來驗證事件是否有稽核成功
我們切換至 資料庫/安全性/稽核/Server-audit--->檢視稽核紀錄
(圖下最後一筆Server_audit 已被稽核)
(圖下最後一筆Server_audit 已被稽核)
全站熱搜
留言列表