我已经准备好非管理员用户使用 WMI 收集数据。
我可以使用这个用户查询任何命名空间,除了 root/MSCluster。对于 root/MSCluster,它返回“拒绝访问”。同时,我可以使用域管理员帐户成功查询它。
Get-WSManInstance wmi/root/mscluster/* -Enumerate -Filter "SELECT * FROM MSCluster_Resource" -ComputerName host1.corp.com -Authentication Kerberos -Credential [email protected]
“[email protected]”被添加到“性能监视器用户”、“分布式 COM 用户”和“WinRMRemoteWMIUsers__”组中,授予“事件日志读取权限”,授予所有 WMI 命名空间的完全访问权限,完全 DCOM 访问权限被授予
您要求实例化整个类。查看 msdn 上的类枚举器,我并不感到惊讶它未能需要管理员访问权限。
您可以尝试查询您需要的特定属性并查看是否触发了异常,但大多数都需要管理员访问权限。
这是您正在使用的课程的 msdn 页面:
https://msdn.microsoft.com/en-us/library/windows/desktop/aa371464(v=vs.85).aspx
我发现查询 root/MsCluster 需要额外的权限。可以使用 Grant-ClusterAccess ( https://technet.microsoft.com/en-us/library/ee460969.aspx ) 授予此权限。
查询 root/virtualization/v2 还需要将用户添加到“Hyper-V 管理员”本地组