Sql-Server-2005
審核 SQL Server 2005 上的使用者查詢
我處於一種不愉快的情況,我需要審核使用者通過 SSMS、SQLCMD 等在 SQL Server 2005 數據庫上執行的任何查詢。
由於無法升級 SQL Server 的版本、更改伺服器權限等,情況變得更糟。
我目前正在審核特權帳戶下的使用者登錄(上一個問題:審核 SQL Server 2005 中的“sa”登錄)。
我擔心現在我需要審核正在執行的查詢,我需要為表設置伺服器端跟踪,這將帶來更高的性能成本。
我已經在Google上找到了一些建議,但除了“執行伺服器端跟踪/分析器”之外似乎找不到任何東西。
我在這裡還有哪些其他選擇(如果有)?我是否必須硬著頭皮設置高度過濾的伺服器端跟踪來擷取這些數據?
不幸的是,沒有任何變更數據擷取、變更跟踪(都來自 SQL 2008 +),甚至沒有足夠的跟踪事件或跟踪事件組用於事件通知。
您被用於保存所有使用者查詢的伺服器端跟踪所困。
與更改跟踪和更改數據擷取功能相比,SQL Server 審核功能提供了有關 SQL Server 實例和數據庫事件的更多詳細資訊 - 這些不跟踪已執行的查詢。該功能提供有關誰、什麼和何時的資訊,並啟用對審計事件的細粒度過濾。它還跟踪 SELECT 語句的執行。提供三種不同的輸出文件類型,全部儲存在中央位置以便於管理
數據庫級操作提供比伺服器級操作更精細的過濾。您可以在MSDN - SQL Server Audit Action Groups and Actions上找到所有數據庫級審計操作組和事件的完整列表
有關其他提示和說明,您可以查看審核 SQL Server 數據更改的方法系列線上文章