System Center Configuration Manager 在具有 AllSigned 执行策略的设备上利用“运行脚本”功能

System Center Configuration Manager 在具有 AllSigned 执行策略的设备上利用“运行脚本”功能

我们使用 System Center Configuration Manager 1902 版本来管理我们的设备。

我想使用好的功能“运行脚本”,它可以在整个设备集合上运行 PowerShell 脚本,但我们所有的设备都将 ExecutionPolicy 设置为 AllSigned(这是公司政策)。

它不起作用,在每个设备中本地运行的脚本(由 SCCM 创建)没有经过数字签名,因此它无法运行并向 SCCM 返回空白或奇怪的“8”值输出。

在具有 RemoteSigned 或 Unrestricted ExecutionPolicy 的设备上(用于测试),它运行良好,输出返回是正确的。

有解决方案吗?无需更改 PowerShell 执行策略?

答案1

ExecutionPolicy 并不是真正的安全设置。它旨在防止普通用户无意中运行不受信任的脚本。因此,您可能需要从 cmd 脚本运行:

powershell.exe -ExecutionPolicy Bypass -File <path to script.ps1>

我相信你也可以指定-Command "& C:\Path\To\Script.ps1"

相关内容