Windows 域,按用户划分的会话

Windows 域,按用户划分的会话

在 Windows 域中,给定一个用户名,如何获取用户当前登录的机器列表(通过 RDP)?

答案1

你不知道。

至少如果您没有正确定义“登录”(RDP?本地控制台?文件共享?打印机?网站?DB?)则不然。

即使如此,这也是一项相当艰巨的任务,因为没有这些信息的中央存储库;您必须扫描每台机器以查找活动会话或查询所有域控制器上的安全日志。

有第三方审计工具可以跟踪这一点,但 AD 中没有简单的内置方法来做到这一点。

答案2

我们以“简单”的方式执行此操作,使用登录/注销脚本,将机器名称、用户名和时间写入 SQL 数据库或每个人都可以修改的“隐藏”AUDIT$ 共享上的文件,或者将说明更改为用户名(用于在 WinXP Explorer 的域视图中看起来不错)。

可能现在,使用组策略首选项设置描述会更加容易,即添加用户首选项以替换HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters\srvcommentREG_EXPAND_SZ%USERNAME%。但它只适用于最后登录的用户,并且可能仅适用于多用户(例如远程桌面、快速用户切换)设置。

当然,如果您正在寻找一种整体的由外而内的方法,则必须检查每台计算机上的事件日志——也许使用 Powershell 的Get-EventLogcmdlet。有一篇非常好的博客文章介绍了您需要查找的内容http://blogs.msdn.com/b/ericfitz/archive/2008/08/20/tracking-user-logon-activity-using-logon-events.aspx

答案3

正如其他人所指出的,没有记录谁在哪里登录等的中央数据库。但是,如果您只关心某些机器子集,或者至少可以枚举它们,那么您可以使用 PowerShell 查询它们以查看谁已连接。

相关内容