You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

远程以管理员权限执行PowerShell脚本遇权限问题求助

远程执行需管理员权限的PowerShell脚本问题解决方案

核心问题

当前脚本失效的原因:

  • 通过Invoke-Command建立的远程会话默认是非管理员权限级别
  • -Verb RunAs参数在无交互的远程环境中无法触发UAC弹窗,导致Script_C检测到未满足提升权限要求,返回"Access Denied"错误

具体修复方案

方案1:使用PowerShell 7+内置管理员远程参数(推荐)

若环境已升级至PowerShell 7或更高版本,直接修改Server A上的Script_A.ps1,添加-RunAsAdministrator参数(需确保执行账号在Server B拥有管理员权限):

Invoke-Command -ComputerName "Server B" -RunAsAdministrator -ScriptBlock{
     Set-Location "C:\Path"
     .\Script_B.ps1
}

方案2:Windows PowerShell 5.1兼容方案

若仍使用Windows PowerShell 5.1,修改Server B上的Script_B.ps1,通过Start-Process启动带管理员权限的PowerShell进程执行Script_C:

Set-Location "C:\Path"
Start-Process powershell.exe -ArgumentList "-File .\Script_C.ps1 -Force" -Verb RunAs -Wait -NoNewWindow

同时需在Server B上调整UAC设置以支持无交互权限提升:

  1. 运行gpedit.msc打开组策略编辑器
  2. 定位到计算机配置>Windows设置>安全设置>本地策略>安全选项
  3. 将用户账户控制: 管理员批准模式中管理员的提升权限提示行为设置为不提示,直接提升
  4. 若使用内置管理员账号,需启用用户账户控制: 用于内置管理员账户的管理员批准模式

必要前提

  • 执行Script_A的账户必须是Server B的本地管理员组成员
  • 远程环境无法处理交互式UAC弹窗,必须确保UAC配置允许无提示的管理员权限提升

内容的提问来源于stack exchange,提问作者cosmo_

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 03:41:31