在 SQL Server 2017 中设置一些警报,这些警报通过电子邮件发送给某些 DBA。
我尝试配置的一些警报示例是警报编号 229 - 对象“X”的执行权限被拒绝
目前,电子邮件中没有关于谁的许可被拒绝的详细信息——我想知道,是否可以包括这个?
当前通知如下所示:
日期/时间:2018 年 7 月 2 日下午 1:29:59
描述:对对象“sp_Price”、数据库“Customizations”、架构“dbo”的执行权限被拒绝。
在 SQL Server 2017 中设置一些警报,这些警报通过电子邮件发送给某些 DBA。
我尝试配置的一些警报示例是警报编号 229 - 对象“X”的执行权限被拒绝
目前,电子邮件中没有关于谁的许可被拒绝的详细信息——我想知道,是否可以包括这个?
当前通知如下所示:
日期/时间:2018 年 7 月 2 日下午 1:29:59
描述:对对象“sp_Price”、数据库“Customizations”、架构“dbo”的执行权限被拒绝。
SQL Server 代理程序生成的警报不包含此信息,遗憾的是您无法添加它。
一种选择是设置扩展事件会话以捕获 error_reported 事件并按特定错误编号进行过滤。这将允许您捕获其他信息,例如程序名称、用户名、客户端计算机等。
将其记录到文件中并使用代理作业定期查询文件并在找到条目时发出警报。
链接:
扩展事件中的登录失败:https ://www.mssqltips.com/sqlservertip/3214/use-extended-events-to-get-more-information-about-failed-sql-server-login-attempts/
扩展事件快速入门指南:https ://learn.microsoft.com/en-us/sql/relational-databases/extended-events/quick-start-extended-events-in-sql-server?view=sql-server-2017