首页 > 解决方案 > 我们可以创建一个触发器(或任何对象)来捕获每个登录名吗

问题描述

实际上我需要找到所有上个月登录到 SQL Server 的用户,这样我就可以从 AD 组中删除没有使用 SQL Server 的用户。

我找不到,所以现在我正在尝试创建触发器,以便在一个月后我可以删除用户。

标签: triggerssql-server-2016

解决方案


在服务器属性下选择安全选项卡并为“失败和成功登录”启用登录审核。然后将信息记录在 SQL Server 日志中。

也可以通过触发器来实现。就像是

CREATE TRIGGER Logon_Audit
ON ALL SERVER
FOR LOGON
AS
BEGIN
   declare @acct as nvarchar(max)
   set @acct = ORIGINAL_LOGIN()

   -- insert @acct into some table
END

推荐阅读