13

SQL プロファイラーを使用してデータベース アクティビティを監視していますが、データベース内のさまざまなオブジェクトの "アクセス許可が拒否されました" を監視することに関心があります。「セキュリティ監査」カテゴリには約 50 の異なる項目がありますが、オブジェクトに対して「許可が拒否されました」と表示されているように見えるものはありません。Login Failed とその他のいくつかのエラーが表示されますが、オブジェクト レベルでは何も表示されません。

例: ユーザーはデータベースに対する権限を持っていますが、特定のテーブルに対する権限は持っていません。そのテーブルから選択しようとすると、エラーが発生します。これらのエラーをプロファイラーに監視させることはできますか?

4

2 に答える 2

22

「エラーと警告」セクションの「ユーザーエラーメッセージ」イベントをキャプチャする必要があります。必要に応じて、[エラー]列をフィルタリングできます。エラー229は許可が拒否されました

于 2009-06-26T19:18:01.220 に答える
4

これは同じことを達成するかもしれません:

SQL 2000に戻ると、エラーメッセージ229を変更して、「許可が拒否されました」がSQLエラーログに書き込まれるようにすることができます。

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

これがSQL2005+で機能するかどうか、またはどのように機能するかはわかりませんが、Connectは言いますが、TiborKarasziと言うことができるかもしれません。自分でテストすることはできません、ごめんなさい。

編集:これには、プロファイラーやトレーサーを実行する必要がないという利点があります...

于 2009-06-26T19:22:10.917 に答える