2009-06-26 21 views
7

我正在使用SQL事件探查器來觀察一些數據庫活動,並且我有興趣看數據庫中各種對象的「權限被拒絕」。 「安全審計」類別中有大約50個不同的項目,但似乎沒有顯示某個對象的「權限被拒絕」。我可以看到登錄失敗,以及其他一些失敗,但在對象級別沒有任何問題。SQL Server Profiler - 監視對象上拒絕的權限?

示例:用戶具有數據庫權限,但不具有特定表格的權限。當他們嘗試從該表中選擇時,他們會收到錯誤 - 我可以讓Profiler監視這些錯誤嗎?

回答

14

您想在「錯誤和警告」部分中捕獲「用戶錯誤消息」事件。您可以按照您認爲合適的方式過濾錯誤列。錯誤229是拒絕的權限

+0

很好。那麼容易... – gbn 2009-06-26 19:22:46

+0

這是壯觀的。我不得不過濾我們的事件5701和5703,這似乎只是關於設置語言的信息性消息。在我濾除了這些後,這正是我所期待的! – SqlRyan 2009-06-26 19:33:17

2

這可能會達到相同的:

早在SQL 2000,您可以修改錯誤信息229所以拒絕「權限」被寫入到SQL錯誤日誌。

EXEC dbo.sp_altermessage 229, 'WITH_LOG', 'true' 

我不知道是否/如何適用於SQL 2005+ probably not, says Connectmaybe we can now says Tibor Karaszi。我無法測試自己,對不起。

編輯:這有優勢,你不需要探查器或跟蹤器運行...