gpt4 book ai didi

powershell - "get-wmiobject win32_process -computername"得到错误 "Access denied , code 0x80070005"

转载 作者:行者123 更新时间:2023-12-04 10:19:11 41 4
gpt4 key购买 nike

我正在尝试在 3 个终端服务器上查找进程,这些进程在其 $_.commandline 属性中包含某些单词。在我的域管理员帐户下,它工作正常。但是我希望这个脚本对域用户可用,而 doamin 用户在运行这个脚本时会出错。

我该怎么做,以便域用户可以像域管理员一样运行此脚本?提前致谢!

错误:

Get-WmiObject : Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESS DENIED))
At N:\FindWhoIsUsing\FindWhoIsUsing.ps1:7 char:18
get-wmiobject <<<< win32_process -computername $server -EnableAllPrivileges|
CategoryInfo : NotSpecified: (:) [Get-WmiObject], UnauthorizedAccessException
FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.GetWmiObjectCommand

电源 shell 代码:
Write-host "Who is using this profile?"
$profile = Read-host "specify profile name"
$servers = @("server-01","server-02","server-03")
Foreach($server in $servers)
{
Write-host $server
get-wmiobject win32_process -computername $server -EnableAllPrivileges|
where{$_.name -like "*Processname*" -and
$_.CommandLine -like "*$profile*"}|
select @{n="Server";e={$server}},@{n="User";e={$_.getowner().user}},@{n="ProcessID";e= {$_.ProcessID}},{$_.CommandLine}|fl
}
Write-host "DONE Searching!"

最佳答案

好的,这里是步骤:

  • 启动“wmimgmt.msc”
  • 右键单击“WMI 控件(本地)”,然后选择属性
  • 转到“安全”选项卡,然后依次选择“安全”、“高级”和“添加”
  • 选择要授予 WMI 访问权限的用户名或组,然后单击确定
  • 授予所需的权限,我建议首先授予所有权限以确保授予访问权限,然后根据需要删除权限。
  • 确保“应用于”选项设置为“此命名空间和子命名空间”
  • 保存并退出所有提示
  • 将用户或组添加到本地“分布式 COM 用户”组。注意:此处不能添加“Authenticated Users”和“Everyone”组,因此您可以选择使用“域用户”组。
  • 关于powershell - "get-wmiobject win32_process -computername"得到错误 "Access denied , code 0x80070005",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14952833/

    41 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com