0

我正在研究一个 PowerShell 脚本,该脚本(除其他外)将当前登录的用户获取到 VM 列表,使用 WMI 获取任何 explorer.exe 进程的所有者。

$User = Get-WmiObject -Class win32_process -ComputerName $strVMName -Credential $cred | `
Where-Object{ $_.Name -eq "explorer.exe" } | `
ForEach-Object{ ($_.GetOwner()).Domain + "\" + ($_.GetOwner()).User; }

此代码运行良好,但仅当使用的凭据是正在查询的 VM 上的管理员时。我已在 WMI Control 中授予非管理员用户对 CIMV2 的完全权限,但 GetOwner 方法不返回任何内容($user 仅返回“\”),除非我也将用户添加到管理员组。由于此脚本旨在由普通用户运行,因此我宁愿不授予他们管理员权限。

有人可以指出使用这些方法所需的最低权限吗?甚至是获取当前登录用户的另一种方法,该方法适用于非管理员?

4

0 回答 0