【问题标题】:Remote PowerShell Excution by non admins非管理员远程执行 PowerShell
【发布时间】:2011-11-23 17:27:56
【问题描述】:

我在目标服务器上以非管理员身份远程执行脚本时遇到问题。

这是我尝试运行的脚本的一部分:

New-PSSession -computername ServerA.DomainA.org -Credential $LoginCredentials 
$PSServerA = Get-PSSession -computername bl ServerA.DomainA.org 
Invoke-Command -Session $PSServerA -scriptblock {Add-PSSnapin Quest.ActiveRoles.ADManagement}

我收到以下错误:

加载扩展类型数据文件时出现以下错误:Quest.ActiveRoles.ADManagement, C:\Program Files\Quest Software\Management Shell for AD\Quest.ActiveRoles.ADManagement.Types.ps1xml:文件跳过,因为以下验证异常:AuthorizationManager 检查失败..

这是我正在编写的帐户创建脚本的一小部分。我希望帮助台能够执行脚本,尽管他们是服务器操作员组的成员,但他们不是目标服务器上管理员组的成员。我可以以他们的身份登录到目标服务器,并从标准(非管理员)PowerShell 提示符成功运行 Add-PSSnapin 命令。

目标服务器上的 ExecutionPolicy 是 Unrestricted。

我已授予用户对默认 microsoft.Powershell 远程会话配置的执行权限,这是成功的,因为他们可以打开会话。

所以我的问题是我需要为用户分配什么权限才能让他们远程执行命令?

【问题讨论】:

  • 您可以运行Invoke-Command -Session $PSServerA -scriptblock {get-executionpolicy} 来获取$PSServer 会话的有效执行策略吗?

标签: powershell remoting


【解决方案1】:

您可能遇到了 PowerShell 双跳限制。当您远程进入一台机器然后尝试从那里访问另一台计算机时,PowerShell 不喜欢它。不过,我以前从未使用过 AD 管理单元。这是我最好的猜测。

您是否有机会联系您的 AD 管理单元的开发人员寻求帮助?他们可能知道。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-24
    • 2016-08-25
    • 1970-01-01
    • 2010-11-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多