Get-ExecutionPolicy

获取当前会话中的执行策略。

语法

Get-ExecutionPolicy [[-Scope] {<Process> | <CurrentUser> | <LocalMachine> | <UserPolicy> | <MachinePolicy>}] [-List] [<CommonParameters>]

说明

Get-ExecutionPolicy cmdlet 获取当前会话中的执行策略。

执行策略由使用 Set-ExecutionPolicy 设置的执行策略以及 Windows PowerShell 执行策略设置的组策略设置来确定。默认值为“Restricted”。

如果不带参数,Get-ExecutionPolicy 将获取会话中的有效执行策略。可以使用 List 参数获取影响会话的所有执行策略,也可以使用 Scope 参数获取特定作用域的执行策略。

有关详细信息,请参阅 about_Execution_Policies。

参数

-List

获取会话的所有按优先级顺序列出的执行策略值。默认情况下,Get-ExecutionPolicy 仅获取有效执行策略。

是否为必需?

false

位置?

named

默认值

False

是否接受管道输入?

false

是否接受通配符?

false

-Scope <ExecutionPolicyScope>

获取指定作用域中的执行策略。默认情况下,Get-ExecutionPolicy 将获取当前会话中的有效执行策略。

有效值包括:

-- MachinePolicy:由计算机上的所有用户的组策略设置的执行策略。

-- UserPolicy:由计算机上的当前用户的组策略设置的执行策略。

-- Process:为当前的 Windows PowerShell 进程设置的执行策略。

-- CurrentUser:为当前用户设置的执行策略。

-- LocalMachine:为计算机上的所有用户设置的执行策略。

是否为必需?

false

位置?

1

默认值

有效执行策略

是否接受管道输入?

true (ByPropertyName)

是否接受通配符?

false

<CommonParameters>

此 cmdlet 支持通用参数:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。有关详细信息,请参阅 about_Commonparameters.

输入和输出

输入类型是指可通过管道传递给 cmdlet 的对象的类型。返回类型是指 Cmdlet 所返回对象的类型。

输入

不能通过管道将输入传递给此 cmdlet。

输出

Microsoft.PowerShell.ExecutionPolicy

Get-ExecutionPolicy 针对每个所获取的执行策略返回一个对象。

说明

使用 Get-ExecutionPolicy 无法获取为特定作用域设置的特定执行策略,也无法获取由组策略设置的执行策略。Get-ExecutionPolicy 只会获取由于应用所有优先级规则而得出的有效执行策略。

执行策略是 Windows PowerShell 安全策略的一部分。它确定是否可以加载配置文件(包括 Windows PowerShell 配置文件)和运行脚本,并且确定哪些脚本(如果有)在运行之前必须进行数字签名。

有效执行策略由使用 Set-ExecutionPolicy 设置的策略以及计算机和用户的“启动脚本执行”组策略来确定。优先级顺序为:计算机组策略 > 用户组策略 > 进程(会话)执行策略 > 用户执行策略 > 计算机执行策略。

有关 Windows PowerShell 执行策略的详细信息(包括 Windows PowerShell 策略的定义),请参阅 about_Execution_Policies。

示例 1

C:\PS>get-executionpolicy

Restricted

说明
-----------
此命令获取 shell 的当前执行策略。





示例 2

C:\PS>set-executionpolicy RemoteSigned; get-executionPolicy

RemoteSigned

说明
-----------
这些命令为 shell 执行策略设置新的用户首选项,然后显示有效的执行策略。这些命令以分号 (;) 分隔。在此示例中,由于没有任何组策略设置,因此用户首选项即为 shell 的有效策略。





示例 3

C:\PS>get-executionpolicy -list

        Scope  ExecutionPolicy
        -----  ---------------
MachinePolicy  Undefined
   UserPolicy  Undefined
      Process  Undefined
  CurrentUser  AllSigned
 LocalMachine  RemoteSigned

C:\PS> get-executionpolicy
AllSigned

说明
-----------
这些命令获取当前会话中的所有执行策略以及有效的执行策略。

第一个命令获取影响当前会话的所有执行策略。这些策略按优先级顺序列出。

第二个命令仅获取有效的执行策略,这是在 CurrentUser 作用域中设置的执行策略。





另请参阅

概念

Set-ExecutionPolicy
Get-AuthenticodeSignature
Set-AuthenticodeSignature
about_Execution_Policies
about_Signing