【问题标题】:WMI GetObject Permission Denied errorWMI GetObject 权限被拒绝错误
【发布时间】:2011-11-21 02:31:03
【问题描述】:

我编写了一个 VBScript 来通过 WMI 将 Win2k3 SP2 服务器连接到多个 Win2k3 + SP2 和 WinXP + SP3 机器,以便查询系统 Win32_OperatingSystem 和 Win32_ComputerSystem 类。

Set loWMISvc = GetObject("winmgmts:{impersonationLevel=impersonate,authenticationLevel=Pkt}\\" & lsStore & "\root\cimv2")

Note: 'lsStore' is the IP address of the computer system I successfully connection too prior. 

然后我尝试为远程系统创建一个新对象,它不断返回权限被拒绝错误(脚本的输出):

21/11/2011 1:17:50 PM     SUCCESS: Established connection to store
D:\Program Files\SUREfire Systems\Support\MG\QueryStores\QueryStores.vbs(244, 5) Microsoft VBScriptruntime error: Permission denied: 'GetObject'

尽管将对象 ImpersonationLevelAuthenticationLevel 名字对象设置为预期,WMI 似乎也正确安装在客户端和远程系统上。与远程系统的初始连接也适用于本地管理员用户。

还有什么可能是我没有看到的权限被拒绝错误的原因?任何帮助将不胜感激。

【问题讨论】:

    标签: vbscript wmic


    【解决方案1】:

    我相信我已经解决了自己的问题。 “权限被拒绝”错误与 UAC 有关,因此您需要使用与远程系统相同的访问和权限级别来执行脚本。我只是在客户端系统上以管理员用户帐户运行 DOS 命令提示符,然后 GetObject 成功。

    虽然管理员帐户在两个不同的系统上看起来相同,但这证明您需要确保同样的访问级别和安全性;)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-07-19
      • 1970-01-01
      • 2016-09-25
      • 2015-09-16
      • 2012-02-11
      • 2016-11-14
      • 2016-12-28
      相关资源
      最近更新 更多