Set-ExecutionPolicy
-ExecutionPolicy
指定执行策略。 如果没有组策略,并且每个范围的执行策略都设置为 Undefined,则 Restricted 将成为所有用户的有效策略。
可接受的执行策略值如下所示:
- AllSigned。 要求所有脚本和配置文件都由受信任的发布者签名,包括在本地计算机上编写的脚本。
- Bypass。 不阻止任何操作,并且没有任何警告或提示。
- Default。 设置默认执行策略。 Restricted 适用于 Windows 客户端或 RemoteSigned Windows 服务器。
- RemoteSigned。 要求从 Internet 下载的所有脚本和配置文件都由受信任的发布者签名。 Windows 服务器计算机的默认执行策略。
- Restricted。 不加载配置文件或运行脚本。 Windows 客户端计算机的默认执行策略。
- Undefined。 没有为范围设置执行策略。 从组策略未设置的范围中删除分配的执行策略。 如果所有范围内的执行策略为 Undefined,则有效执行策略为 Restricted。
- Unrestricted。 从 PowerShell 6.0 开始,这是非 Windows 计算机的默认执行策略,无法更改。 加载所有配置文件并运行所有脚本。 如果运行从 Internet 下载的未签名脚本,则系统将提示你需要权限才能运行该脚本。
解决禁止脚本运行的问题
# 查看当前执行策略
Get-ExecutionPolicy
# 查看所有执行策略
Get-ExecutionPolicy -L
# 设置执行策略
Set-ExecutionPolicy RemoteSigned