Windows Server 2012 用户登录和注销时间

Windows Server 2012 用户登录和注销时间

我需要捕获 Win Srv 2012 域用户的登录和注销时间(如果可能的话,还包括睡眠和唤醒时间),并将其插入到 SQL 表中以构建显示用户工作时间的报告。所有工作站都装有 Win 7 Pro 并在本地工作(不通过终端服务)。由于工作站数量众多,我更希望将每个脚本/策略都放在服务器上。

任何帮助都感激不尽。

问候,Przemek

答案1

有一个解决方案可以满足您的需求:

1- 在客户端上使用 hids 软件代理将事件记录到服务器。需要在客户端上安装、配置服务器,没有 vpn 等则无法在外面工作。(Ossec 或其他 siem/hids 工具可以完成这项工作)

2- 使用 Windows 审核功能集中管理所有事件。此操作无需客户端工具。您只需运行脚本/gpo 并配置将安全日志发送到集中服务器即可。请看这个:http://www.windowsecurity.com/articles-tutorials/authentication_and_encryption/Centralized-Auditing-here-FREE.html

之后,您需要一些脚本来读取集中服务器中的审计日志并写入数据库。

有 Nxlog、Snare 等工具可以完成这项工作(读取事件日志并格式化为 syslog)。logstash 可以读取 syslog 并写入数据库(nosql 数据库或 sql 数据库)。

也有商业软件可以做到这一点,但这里不是讨论这个的地方(谷歌搜索商业产品)。

答案2

您可以使用获取 ADComputer

Get-ADComputer -identity <machineName> -Properties * | FT Name, LastLogonDate

machineName = 目标机器名称

相关内容