WMI获取对象访问权限被拒绝

时间:2013-03-12 00:34:13

标签: vbscript permissions wmi

  1. 常规用户登录域
  2. 组策略运行用户配置 - >登录 - > VBS脚本
  3. 设置ServerWMI = GetObject(“winmgmts:\ print \ root \ CIMV2”)
  4. 我以常规用户身份拒绝访问,适用于Domain Admin

  5. 尝试将GPO更改为使用管理员参数运行 - / u:“domain \ user”/ p:“adminpassword”

  6. 尝试过impersonateLevel = impersonate
  7. 尝试authenticationLevel = pktPrivacy
  8. 尝试访问远程计算机(打印)并更改经过身份验证的用户的WMI CIMV2权限以获得所有权限
  9. 需要非管理员用户以足够的权限运行此登录脚本,以便在我们的打印服务器上远程查询WMI。我这样做是为了进行客户端/服务器比较。

1 个答案:

答案 0 :(得分:0)

对于具有显式凭据的远程WMI访问,您必须使用以下内容:

server = "print"
user   = "domain\admin"
pass   = "password"

Set locator = CreateObject("WbemScripting.SWbemLocator")
Set svc = locator.ConnectServer(server, "root\cimv2", user, pass)
svc.Security_.ImpersonationLevel = 3

强烈建议反对在任何类型的用户/登录脚本中执行此操作。

对于需要它的用户,更好的方法是enable remote WMI access

但请注意,出于安全原因,通常不允许远程WMI访问,那么为什么您认为需要这样做?通过为用户提供远程WMI访问权限,您想要实现什么目标?