有没有办法以编程方式收集在过去 30 天内或两个日期之间登录到 Windows 服务器(特别是 2008 R2)的用户列表?有 2 台活动目录服务器,所有用户都是同一个域的成员。
我的最终目标是出于 SPLA 的原因自动获取我们每台服务器的唯一用户列表。
有没有办法以编程方式收集在过去 30 天内或两个日期之间登录到 Windows 服务器(特别是 2008 R2)的用户列表?有 2 台活动目录服务器,所有用户都是同一个域的成员。
我的最终目标是出于 SPLA 的原因自动获取我们每台服务器的唯一用户列表。
这是手动操作,而不是通过程序,但您可以在事件查看器中创建一个过滤器,仅显示您的登录事件。右键单击
Custom Views
文件夹并选择Create Custom View
选项。不幸的是,对于这个过滤器,您必须编辑 XML。下面是过滤器的 XML 的样子:您可能想要编辑它以包括 Logon Type 7(解锁锁定的会话)。有关登录类型代码的更多信息,请参见此处:
请注意,这不会按日期范围过滤:仅登录。但是,一旦您缩小了该部分的范围,就可以轻松地在事件查看器中手动浏览日期范围。
不幸的是,当我使用“连接到另一台计算机”选项时,这个过滤器对我不起作用,即使防火墙已关闭。
没有简单的方法。首先想到的是梳理安全日志。您正在查找事件 ID 4624。请注意登录类型(如果您打算计算交互式登录,则为 2、10、11)。
根据生成安全日志条目的速度以及日志的大小,日志可能会在 30 天周期之前被覆盖。
最好执行一个登录脚本,将计数计算到一个中心位置。