无法以本地管理员身份对 root\MSCluster 命名空间进行 WMI 查询

无法以本地管理员身份对 root\MSCluster 命名空间进行 WMI 查询

我正在尝试使用 WMI Explorer 查询各个主机上的 root\MSCluster 命名空间以获取群集资源组和资源对象数据。我可以在 Win2K3 群集节点上毫无问题地访问命名空间,但在尝试连接到 Win2K8 和 Win2K8R2 节点时收到拒绝访问错误。

我可以毫无问题地访问 root\cimv2 命名空间,但只能访问 MSCluster 命名空间,尽管我是本地管理员。是否有功能设置、本地安全策略或服务器角色需要我成为其成员才能访问命名空间?

答案1

不熟悉 WMI Explorer,但是它允许您指定 ImpersonationLevel 吗?

在本地机器上尝试以下 VBScript(未经测试)。然后编辑strComputer = "."行作为服务器名称并远程执行:

On Error Resume Next

Dim strComputer
Dim objWMIService
Dim colClusterNodes
Dim objClusterNode

strComputer = "."

Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate,authenticationLevel=pktPrivacy}!\\" & strComputer & "\root\mscluster")
If Err.Number <> 0 Then
    WScript.Echo "ERROR : Failed to get WMI handle [" & Err.Description & "]"
    Err.Clear
Else

    Set colClusterNodes = objWMIService.ExecQuery( "Select * from MSCluster_Node")
    If Err.Number <> 0 Then
        WScript.Echo "ERROR : Failed to execute WMI query [" & Err.Description & "]"
        Err.Clear
    Else 

        For Each objClusterNode in colClusterNodes
            Wscript.Echo "Caption : " & objClusterNode.Caption
            Wscript.Echo "State   : " & objClusterNode.State
            Wscript.Echo "Status  : " & objClusterNode.Status
            WScript.Echo ""
    Next

        Set colClusterNodes = Nothing
    End If

    Set objWMIService = Nothing
End If

相关内容