在Windows域中,给定用户名,如何获得用户当前登录的计算机列表(通过RDP)?
发布于 2013-01-25 11:54:02
你没有。
至少如果你没有正确定义“登录”(RDP?本地控制台?文件共享?打印机?网站?( DB?)
即使如此,这也是一项相当困难的任务,因为没有中央存储库来存储这些信息;您必须扫描每台机器上的活动会话,或者查询所有域控制器上的安全日志。
有第三方审计工具可以跟踪这一点,但在AD中没有简单的内置方式来实现这一点。
发布于 2013-01-25 12:44:54
我们采用“轻松”的方式,使用登录/注销脚本,将机器名称、用户名和时间写入SQL数据库或每个人都可以修改的“隐藏”审计$共享上的文件,或者将描述更改为用户名(在WinXP资源管理器对域的视图中用来看起来很好)。
现在使用组策略首选项设置描述可能更容易,即添加用户首选项以将HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters\srvcomment替换为值%USERNAME%的REG_EXPAND_SZ。不过,它只适用于上一次登录用户,而且可能只对多用户(例如远程桌面、快速用户切换)设置部分工作。
当然,如果您正在寻找一种整体的外部输入方法,您必须检查每台计算机上的事件日志--也许使用Powershell的Get-EventLog cmdlet。有一篇很好的博客文章,你需要在http://blogs.msdn.com/b/ericfitz/archive/2008/08/20/tracking-user-logon-activity-using-logon-events.aspx上找到它。
发布于 2013-01-25 20:15:14
正如其他人所注意到的,没有关于谁登录在哪里等的中央数据库。但是,如果您只关心某个计算机子集,或者您至少可以枚举它们,那么您可以使用PowerShell查询它们以查看谁是连接的。
https://serverfault.com/questions/472355
复制相似问题