日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL Server 审核(Audit)-- 创建数据库级别的审核

發布時間:2024/4/13 数据库 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL Server 审核(Audit)-- 创建数据库级别的审核 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SQL Server 審核(Audit)-- 創建數據庫級別的審核

?

任務1:創建審核


步驟1打開SSMS,登錄到指定的實例,展開“Security”,“Audits”節點。

?

步驟2在“Audits”節點上,右鍵選擇“New Audit…”選項。

?

步驟3在“Create Audit”窗口,輸入以下的參數。

? 在“Audit name”輸入Audit-AdventureWorks2012-Create/Alter/Drop。

? 在“Audit destination”選擇“File”

? 在“File path”輸入D:\MSSQL\DATA\Audit_logs。

?

步驟4單擊“OK”完成設置。

?

?

步驟5右鍵點擊剛剛創建的審核“Audit-AdventureWorks2012-Create/Alter/Drop”,選擇“Enable Audit”選項。

?

?

?

任務2:創建數據庫級別的審核規范 – 監控數據庫對象的創建、刪除與修改。


步驟1在“Object Explorer”窗口,展開“Databases”,“AdventureWorks2012”,“Security”,“Database Audit Specifications”節點。

?

?

步驟2在“Database Audit Specifications”節點,單擊右鍵選擇“Create Database Audit Specification”選項。

?

步驟3在“Create Database Audit Specification”窗口,輸入以下參數。

l 在“Name”輸入DatabaseAuditSpecification-Object-Create/Alter/Drop。

l 在“Audit”選擇之前創建的審核對象“Audit-AdventureWorks2012-Create/Alter/Drop”。

l 在“Actions”區域中“Audit Action Type”下的第一行,選擇“SCHEMA_OBJECT_CHANGE_GROUP”。

?

?

“SCHEMA_OBJECT_CHANGE_GROUP”是屬于數據庫級別的審核操作組,在架構上執行CREATE、ALTER和DROP操作時,就會引發這個事件。

?

步驟4單擊“OK”按鈕,完成設置。

?

步驟5右鍵單擊剛才創建的數據庫審核規范“DatabaseAuditSpecification-Object-Create/Alter/Drop”,選擇“Enable Database Audit Specification”選項。

?

?

?

任務3:測試審核功能 – 創建、修改與刪除數據庫對象。


步驟1打開SSMS,單擊“New Query”執行以下代碼,在數據庫AdventureWorks2012創建、修改與刪除數據庫的對象。

?

USE?AdventureWorks2012 GO --Create?Database?Object CREATE?TABLE?T1(Col1?int?not?null?primary?key) GO CREATE?VIEW?V1?AS?SELECT?*?FROM?T1 GO CREATE?SYNONYM?SYN1?FOR?T1 GO CREATE?FUNCTION?FUN1(@InParm?int)?RETURNS?int?AS?BEGIN?RETURN?@InParm?END GO CREATE?PROCEDURE?PROC1(@InParm?int)?AS?BEGIN?SET?@InParm?=?0?END GO CREATE?TRIGGER?TRIG1?ON?T1?AFTER?INSERT?AS?RAISERROR('This?is?a?dummy?table',16,10) GO --Alter?Database?Object ALTER?TABLE?T1?ADD?Col2?varchar(32) GO ALTER?PROC?PROC1?AS?SELECT?1 GO --Drop?Database?Object DROP?TRIGGER?TRIG1 GO DROP?PROCEDURE?PROC1 GO DROP?FUNCTION?FUN1 GO DROP?SYNONYM?SYN1 GO DROP?VIEW?V1 GO DROP?TABLE?T1 GO

?

?

任務4:使用日志文件查看器閱讀審核日志。


步驟1展開“Security”,“Audits”節點。

?

步驟2在剛才創建的“Audit-AdventureWorks2012-Create/Alter/Drop”對象上,右鍵選擇“View Audit Logs”。

?

步驟3在“Log File Viewer”窗口左上角的“Select logs”區域中,確認有勾選“Audit Collection”,“Audit-AdventureWorks2012-Create/Alter/Drop”。并用以下方式來閱讀所記錄的審核數據。

?

?

?

l 在右邊“Log file summary”區域內,在“Action ID”區域中,分別點擊“CREATE”、“ALTER”、“DROP”等操作類型。

l 在“Class Type”顯示所記錄的各類對象“TABLE”、“VIEW”、“STORED PROCEDURE”等數據庫對象。

l 在下面的“Statement”區域,可以看到所記錄的程序代碼。

l 取得發生事件的日期與時間,可能是利用的SQL Server 2008之后新提供的日期時間函數SYSUTCDATETIME()。回傳的數據類型是datetime2,內容值包含執行SQL Server實例的服務器的日期和事件。而這個日期與時間是以國際標準時間(Coordinated Universal Time:UTC)時間格式回傳,此函數將取回服務器上的格林威治時間(Greenwich Mean Time:GMT),也就是落后北京時間標準8小時。


備注:datetime2是SQL Server 2008之后新增的數據類型,包含了日期數據,并結合以24小時制為基礎的時間。Datetime2可視為既有的datetime數據類型的擴展,它具有較大的日期范圍、較精確的小數有效位數和選擇性的用戶指定有效位數。日期范圍可以從公元1年1月1日到公元9999年12月31日,時間范圍可以到00:00:00到23:59:59.9999999,精確度為100ns(1ns=10的負九次方秒)。

?

采用格林威治時間(GMT)來記錄日期時間數據,對于DBA而言,若擁有位于不同時區的數據庫服務器時,這是一個將日志的時間標準化的作法。但對于非格林威治時間(GMT)時區的用戶而言,例如:北京時區是(GMT+08:00),可能是個困擾。在接下來的實踐中,將使用T-SQL函數fn_get_audit_file來分析與查看審核日志的數據,就可以將格林威治時間(GMT)轉為適合的時區的信息。

?

?

任務5:改用“Windows應用程序事件日志文件”來記錄審核信息。


步驟1在“Security”,“Audits”節點上的“Audit-AdventureWorks2012-Create/Alter/Drop”對象上,右鍵禁用審核。

?

?

若要調整“Audits”對象的屬性,必須要先禁用此“Audits”之后才能進行調整,否則將產生錯誤信息,無法調整屬性。

?

步驟2單擊被禁用的審核對象,單擊鼠標右鍵選擇“Properties”選項。

?

步驟3在“Audit Properties”窗口中的“Audit destination”框,下拉選擇“Application Log”。

?

?

步驟4單擊“OK”按鈕,完成屬性的調整。

?

步驟5單擊被禁用的審核對象,右鍵再啟用審核。

?

步驟6再次執行之前在數據庫AdventureWorks2012創建、修改與刪除數據庫對象的T-SQL代碼。

?

?

任務6:查看存放在“Windows應用程序事件日志文件”內的審核信息。


步驟1展開“Security”,“Audits”節點。

?

步驟2在剛才創建的“Audit-AdventureWorks2012-Create/Alter/Drop”對象上,右鍵選擇“View Audit Logs”。

?

步驟3在“Log File Viewer”窗口左上角的“Select logs”區域中,確認有勾選“Windows NT”,“Application”。

?

步驟4在右邊的“Log file summary”區域,即可查看所記錄到數據。

?

?

采用“Windows應用程序事件日志文件”方式來存放審核日志,具備以下特性。

l 審核內部所記錄的日期時間部分,仍以格林威治時間(GMT)來記錄。

l 在應用程序事件日志文件所記錄的日志時間,已經轉為數據庫服務器所在時區的日期時間。

l 審核所記錄到數據全部存放在消息區域內,其“statement”部分,有記錄所執行的T-SQL程序代碼。但這在閱讀與后續分析上,勢必會增加困擾。若與存放到二進制文件的審核目標比較起來,二進制文件存放的審核日志已經分類在各數據行中,如此一來,不但增加可讀性,也容易進行篩選與分析。

?

若使用Windows的事件查看器來閱讀所記錄到的審核數據,可以在“Application”頁查看所記錄的信息。

?



總結

以上是生活随笔為你收集整理的SQL Server 审核(Audit)-- 创建数据库级别的审核的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。