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