我想查看当前login的人员。 我使用PsLoggedOn \\Machine Name or IP但它给我以下错误:
为[电脑名称]打开HKEY_USERS时出错 无法查询资源login
有什么build议?
使用PowerShell:
Get-WmiObject -Class win32_process -ComputerName remote-hostname | Where-Object{ $_.Name -eq "explorer.exe" } | ForEach-Object{ ($_.GetOwner()).Domain + "\\" + ($_.GetOwner()).User; }
用计算机名称replaceremote-hostname 。
好的,很难说这里到底是什么东西,什么不是,但是在SysInternals论坛上查看这篇文章 ,具体来说,我将在下面复制。
在你的目标机器上检查是否
… [我剪掉的东西很多,因为他们可能不适用于此,使我们] …
一旦目标机器符合上述所有要求,请从本地机器尝试执行这些命令到目标机器:
net use \\ target \ Admin $ / user:Administrator
dir \\ target \ Admin $
net use \\ target \ Admin $ / delete
(只有断开连接,不会删除任何东西。)
(他们也有资源,如工具的常见问题解答,以及工具的MS下载页面的链接,所以他们值得访问关于Sysinternals套件的信息或问题。
现在,假设满足所有这些条件,并且您实际上可以执行上述三个命令,则从PSLoggedon中导致该错误的最常见原因是: 远程registry服务被禁用。 它默认情况下是禁用的,但PSLoggedon(除其他之外)是必需的。 检查你的目标机器上的服务,我敢打赌,你需要启用它来让这个工具为你工作。
编辑:
要使用PSExec远程启动服务,您可以使用:
psexec \\[target] -u [username with admin rights] -p [password] net start [servicename]
因此,您可以使用PSExec远程启动所需的服务,然后使用PSLoggedOn,而不必实际转到每台计算机或部署GPO。
运行应用程序的用户上下文(默认networking凭据)需要在您要查询的计算机上的HKEY_USERSconfiguration单元中打开和读取。
要“升级命令会话”,请右键单击可执行文件(例如, cmd.exe ),然后select“以pipe理员身份运行”。 现在所有可执行文件都从该命令提示符运行,将以“提升权限”运行
在TechNet上阅读关于用户帐户控制的更多信息 ,这是pipe理Windows中令牌提升的function