用户需要哪些权限/权利才能在远程计算机上运行“Get-WmiObject win32_service”?

用户需要哪些权限/权利才能在远程计算机上运行“Get-WmiObject win32_service”?

我的情况和提问者几乎一样这个问题(链接)。唯一的区别是,我不是在编写监控服务,而是尝试让基于 WMI 的监控服务运行。

然而,在阅读了链接的问题(及其答案)之后,我能够在 PowerShell 远程会话中运行“Get-WmiObject win32_logicaldisk -computername WINSRV.genericdomain.local”命令,而不会出现“访问被拒绝”错误,因为我按照接受的答案中提到的步骤进行操作。

不幸的是,执行“Get-WmiObject win32_service -computername WINSRV.genericdomain.local”命令给出了我上面提到的错误(“拒绝访问”)。

这就是为什么我想知道用户是否需要任何其他权限才能在 PowerShell 远程会话中成功使用该命令。

所以,我的问题是:我的用户为此需要什么权限/权利?

答案1

我发现您必须调整 Windows 的服务控制管理器安全设置才能使该命令正常工作。

我找到了解决方案这个答案在 stackoverflow 上。

从远程机器的命令提示符执行此命令对我来说很有效:

sc sdset SCMANAGER D:(A;;CCLCRPRC;;;AU)(A;;CCLCRPWPRC;;;SY)(A;;KA;;;BA)S:(AU;FA;KA;;;WD)(AU;OIIOFA;GA;;;WD)

人们可能想阅读更多关于这个话题的内容。在本文您可以找到有关调整这些设置的更多信息。

答案2

您必须允许 WMI 通过 Windows 防火墙

在目标计算机上,以管理员身份在命令提示符下输入 netsh firewall set service RemoteAdmin enable

根据你的帖子,你已经处理了 DCOM 内容。供你参考https://msdn.microsoft.com/en-us/library/Aa393266.aspx按照步骤

  • 向用户或组授予 DCOM 远程启动和激活权限
  • 授予 DCOM 远程访问权限

确保您要使用的帐户具有适当的 WMI 权限。此参考链接非常适合授权用户在本地计算机和远程计算机上访问 WMI 的步骤。https://technet.microsoft.com/en-us/library/cc771551.aspx

此外,仅供您考虑,为了使 Powershell 远程处理正常工作,必须在您想要使用 Powershell 远程管理的目标计算机上启用 PSRemoting。 https://4sysops.com/archives/enable-powershell-remoting/

相关内容