Netwrix 1Secure 提供跨数据和身份的统一可见性——免费试用14天,享有完全访问权限。开始免费试用

资源中心博客

PowerShell 执行策略

PowerShell 执行策略

Aug 25, 2025

PowerShell 执行策略用于控制脚本的执行条件,以减少意外或不安全的运行。它们从限制性(Restricted、AllSigned)到宽松性(Unrestricted、Bypass)不等,并且可以应用于多个作用域,例如 Process、CurrentUser 和 LocalMachine。尽管它们并非安全边界,但它们有助于促进更安全的脚本编写,支持数字签名,并且可以通过 Group Policy 进行集中强制,以实现组织层面的统一控制。

PowerShell 执行策略简介

在 PowerShell 中,执行策略(execution policies)是一项安全功能,用于控制 PowerShell 脚本在系统上运行的条件。这些策略并不完全等同于安全机制,但旨在实现以下目的:

  • 防止脚本被意外执行
  • 降低从未知或不受信任的来源运行脚本的风险

执行策略在提升脚本安全性方面发挥着重要作用。它们通过限制系统上允许运行的脚本类型,充当第一道防线。此外,它们还会为脚本来源建立信任,例如像 AllSigned 和 RemoteSigned 这样的策略可确保脚本来自受信任的来源。这有助于减少人为错误,例如在某些情况下,用户可能在不知情的情况下执行从电子邮件附件或网页下载的脚本。从更广泛的角度来看,组织可以使用执行策略,在不同机器和用户之间强制实施一致的安全实践。

不过,你还必须注意到:

  • 执行策略并不是安全边界。具有管理员权限的用户可以对其进行覆盖,或者通过特定的 PowerShell 标志来绕过。
  • 它们的主要目的在于防止意外执行,而不是阻止出于明确恶意意图的攻击者。

应将 PowerShell 执行策略作为更广泛的安全策略的一部分来使用,包括已签名的脚本、安全的代码仓库以及其他保护措施。

Netwrix Auditor for Windows File Servers

使用 Netwrix Auditor for Windows File Server 简化新文件监控流程

了解更多

理解 PowerShell 执行策略

先从执行策略在实际中的工作方式说起。当你运行脚本时,PowerShell 会检查执行策略。

  • 如果脚本满足要求,例如由受信任的发布者进行签名或来自本地来源,则会运行。
  • 如果脚本不符合策略要求,PowerShell 会阻止其执行,并显示错误信息。

主要优势

PowerShell 执行策略的主要优势包括:

  • 防止意外执行恶意脚本 — 执行策略降低了无意中运行不受信任或有害脚本的风险,尤其是从互联网下载的脚本。
  • 鼓励安全的脚本编写实践 — 像 AllSigned 和 RemoteSigned 这样的策略会鼓励脚本作者和用户使用受信任的证书对脚本进行签名,从而确保真实性和完整性。
  • 区分本地脚本与远程脚本 — 像 RemoteSigned 这样的策略允许本地创建的脚本在不受限制的情况下运行,同时对远程或下载的脚本实施更严格的控制。
  • 灵活的配置 — 执行策略可以应用于多种范围(Process、CurrentUser、LocalMachine、MachinePolicy 和 UserPolicy),从而使管理员能够控制策略如何以及在哪些位置执行。
  • 为灵活性提供临时覆盖 — 临时覆盖(例如使用 -ExecutionPolicy Bypass)允许脚本在受控场景中运行,而无需永久修改系统的安全设置。
  • 促进组织合规性——可以通过组策略在整个组织中强制执行执行策略,以确保脚本执行的安全实践保持一致。
  • 提高对脚本安全的意识——通过要求采取明确操作(例如对脚本进行签名或绕过策略),执行策略促使用户对脚本来源及其可信度进行更审慎的思考。

关键限制

PowerShell 执行策略的一些关键限制包括:

  • 执行策略并不构成安全边界,因为它们并非为防止蓄意攻击而设计。具备管理权限且经验丰富的用户可以通过以下方式轻松绕过:
  • 使用 -ExecutionPolicy Bypass 标志
  • 修改系统注册表
  • 在另一个进程中运行脚本,或完全绕过 PowerShell
  • 执行策略不会分析脚本的内容。如果签名密钥遭到泄露,即使是已签名的脚本也可能包含恶意代码。
  • 执行策略的保护范围有限,因为它们仅适用于 PowerShell 脚本和命令。它们不控制其他脚本类型(例如 VBScript、Python)或可执行文件,从而在保护上留下漏洞。
  • 像 AllSigned 这样的严格策略,如果用户无法访问受信任的签名基础设施,或经常使用未签名脚本,可能会导致延迟。
  • 执行策略依赖用户遵守其要求。缺乏培训的用户可能会绕过执行策略,或在未充分理解其影响的情况下将其禁用。
  • 像 MachinePolicy、UserPolicy 和 Process 这样的多个策略作用域可能会造成混乱,尤其是在配置混杂或彼此重叠的环境中。
  • 自动化脚本或 CI/CD 管道可能会因严格的策略而遇到问题,从而需要进行额外配置或临时覆盖策略。
  • 执行策略可能会造成虚假的安全感。管理员和用户可能会错误地认为它们是强大的安全机制,而实际上它们主要是用来防止脚本被意外执行的保护措施。

下表总结了 PowerShell 执行策略的主要优势与限制。

Script Execution Control

Prevents accidental execution of harmful scripts

Easily bypassed by users with administrative privileges

Source Validation

Encourages script signing and trusted sources

Does not verify script contents for malicious behavior

Organizational Use

Supports consistent enforcement through Group Policy

May hinder productivity in environments with unsigned scripts

Flexibility

Allows scoped configurations and temporary overrides

Multiple scopes can be confusing for policy management

Security Scope

Adds a layer of defense in a security strategy

Limited to PowerShell scripts, leaving other tools unprotected

PowerShell 执行策略的类型

PowerShell 提供六种类型的执行策略。

受限

这是 Windows 系统上的默认执行策略。它会阻止所有脚本运行,因此管理员无法使用脚本来自动化任务。在此策略下,只能以交互方式执行单个命令。

由于该策略可确保对脚本执行的最大限制,因此适用于不需要脚本的环境。

RemoteSigned

这是 Windows 服务器的默认执行策略。该策略要求从远程位置获取的脚本(例如从互联网下载的脚本)必须由受信任的发布者进行签名。在本地计算机上编写的脚本则不需要签名。总体而言,该策略在安全性和便利性之间取得平衡,尽管在某些情况下可能会带来不便。

要运行从互联网下载的未签名脚本,你必须先将其解除阻止,例如使用 Unblock-File cmdlet。

AllSigned

此策略依赖受信任的证书和证书基础设施。在该策略下,只有由受信任发布者签名的脚本和配置文件才能运行。未签名或被篡改的脚本无法运行。此外,在运行任何脚本之前(即使该脚本已签名),系统都会提示用户进行确认。

此策略最适合那些强烈强调脚本完整性和身份验证的环境。

不受限制

此策略允许所有脚本在不受限制的情况下运行,但在执行远程的未签名脚本之前会显示警告。它是非 Windows 计算机的默认执行策略,无法更改。

由于此策略会增加运行恶意或有害脚本的风险,因此应将其限制在开发或测试环境中使用,并且应当优先考虑灵活性而非安全性。

绕过

此策略允许脚本在没有警告或提示的情况下自由运行。在自动化场景、CI/CD 管道中,或当执行策略干扰合法工作流时,请使用此选项。请注意:由于缺少任何保护或限制,意外或恶意脚本执行的风险可能会成倍增加。

未定义

使用此选项会移除当前作用域的执行策略。如果所有作用域都未定义,则有效策略默认值为 Restricted(Windows 客户端)以及 RemoteSigned(Windows Server)。它用于清除某个作用域的执行策略设置。

PowerShell 执行策略的作用域

PowerShell 执行策略可以应用到不同的作用域(scope),从而决定策略如何以及在何处被强制执行。作用域使管理员能够在不同层级控制脚本的执行行为,例如针对单个用户、计算机上的所有用户或单个会话。下面将讨论各个作用域。

MachinePolicy

Set by a Group Policy for all users of the computer. This policy overrides LocalMachine and CurrentUser. To override this policy, remove the Group Policy setting. It is used for centralized management of script execution policies for all users on a machine.

UserPolicy

Set by a Group Policy for the current user of the computer. This policy overrides LocalMachine and CurrentUser. It is used or centralized management for individual users within a domain environment. Like MachinePolicy, this policy cannot be overridden locally.

Process

Applies to the current PowerShell session only. The policy is saved in the $env:PSExecutionPolicyPreference environment variable. When the PowerShell session is closed, the variable and value are deleted. Hence the policy is temporary and ends when the session is closed. It is useful for testing or temporarily overriding the system policy without permanent changes.

CurrentUser

Applies only to the current logged-in user. This policy is stored in the CurrentUser configuration file. It is used to set a policy for individual users without affecting other users on the same computer.

LocalMachine

Applies to all users on the computer. This policy is stored in the AllUsers configuration file. This is the default scope when no scope is specified. Use it for organization-wide policies on shared machines or when multiple users need the same policy.

针对当前用户和本地计算机的执行策略存储在 PowerShell 配置文件中。特定会话的执行策略仅存储在内存中,且在会话关闭后会丢失。

作用域优先级

当在不同作用域中定义了多个执行策略时,PowerShell 会使用以下优先级顺序来确定哪一项策略生效(从最高到最低):

  1. 组策略:MachinePolicy
  2. 组策略:UserPolicy
  3. 执行策略:Process
  4. 执行策略:LocalMachine
  5. 执行策略:CurrentUser

请记住以下内容:

  • 组策略设置(MachinePolicy 和 UserPolicy)会覆盖本地配置。
  • 设置执行策略时如果未指定作用域,将默认使用 LocalMachine。
  • 如果已配置组策略,那么在较低作用域中使用 Set-ExecutionPolicy 更改策略的尝试将失败。

设置 PowerShell 执行策略

设置 PowerShell 执行策略可决定系统中如何执行脚本。

检查当前的执行策略

使用以下 cmdlet 检查当前的执行策略:

      Get-ExecutionPolicy
      
Image

检查所有作用域的策略

使用以下 cmdlet 检查所有作用域的策略:

      Get-ExecutionPolicy -List
      
Image

设置执行策略

使用 Set-ExecutionPolicy cmdlet 为 PowerShell 设置执行策略。

命令语法

      Set-ExecutionPolicy <PolicyName> -Scope <Scope>
      

示例 1 – 设置执行策略

使用以下 cmdlet 将策略设置为 Unrestricted

      Set-ExecutionPolicy Unrestricted
      
Image

Y 继续,或按 L 取消该操作。

示例 2 – 指定执行策略范围

你可以在不同级别(作用域)上设置策略。使用以下 cmdlet 将策略设置为 RemoteSigned,以应用于本地计算机:

      Set-ExecutionPolicy RemoteSigned -Scope LocalMachine
      

请注意以下事项:

  • 要为 LocalMachine 作用域设置执行策略,必须以管理员身份运行 PowerShell。
  • 如果策略由组策略(MachinePolicy 或 UserPolicy)强制执行,它将覆盖其他设置;尝试更改策略将导致错误。

将远程计算机上的执行策略应用到本地计算机

要将远程计算机上的 PowerShell 执行策略应用到本地计算机,可以结合使用 PowerShell 远程处理以及 Set-ExecutionPolicy cmdlet。步骤如下:

      Invoke-Command -ComputerName TargetComputer -ScriptBlock {

    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Force

} -Credential (Get-Credential)
      

其中,-ComputerName 用于指定目标计算机。-ScriptBlock 包含要运行的命令(在本例中为 Set-ExecutionPolicy)。-Credential 允许在当前账户对目标计算机没有权限的情况下指定凭据。

强制应用策略设置

在更改执行策略时要跳过提示,请使用 -Force 参数。

      Set-ExecutionPolicy RemoteSigned -Force
      

移除执行策略

要移除特定作用域的策略,请将策略设置为 Undefined

      Set-ExecutionPolicy Undefined -Scope CurrentUser
      

如果所有作用域都设置为 Undefined,则默认策略变为 Restricted

临时绕过 PowerShell 执行策略

在 PowerShell 中运行脚本时,你可以在不永久更改策略的情况下临时绕过执行策略。然而,绕过执行策略可能会使系统面临安全风险。请确保你正在运行的脚本来自可信来源。

另外请注意,某些命令可能需要管理员权限。

示例 1:为单个脚本绕过执行策略

此命令会针对该特定调用的 PowerShell 绕过执行策略。

      powershell.exe -ExecutionPolicy Bypass -File "C:\Temp\Script.ps1"
      

Example 2: Bypass in the Current Session

你可以在当前会话期间临时更改执行策略。

      Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
      

在这里,-Scope Process 会确保更改仅限于当前的 PowerShell 会话。关闭会话后,执行策略将恢复为其原始设置。

示例 3:在不更改策略的情况下运行脚本

使用 -Command 参数直接在内联位置执行脚本。

powershell.exe -ExecutionPolicy Bypass -Command “& { . ‘C:\Temp\Script.ps1’ }”

使用组策略管理执行策略

Turn on Script Execution 组策略设置可让你管理企业中计算机的执行策略。该组策略设置会在所有作用域中覆盖 PowerShell 中设置的执行策略。

  • 当 Turn on Script Execution 被禁用时,脚本不会运行。这相当于“Restricted(受限)”执行策略。
  • 你可以启用 Turn on Script Execution,并选择一种执行策略。
  • 当 Turn on Script Execution 未配置时,它不会生效。此时有效的是 PowerShell 中设置的执行策略。

管理已签名和未签名的脚本

已签名的脚本是包含以下内容的 PowerShell 脚本:

  • 脚本内容
  • 来自受信任的证书颁发机构(CA)或自签名证书的数字签名

这可确保脚本来自受信任的来源,并且在签名之后未被修改。已签名的脚本有助于在需要控制哪些脚本可以执行的环境中增强安全性。

以下执行策略与已签名脚本相关:

  • AllSigned — 要求所有脚本和配置文件都必须由受信任的发布者签名。
  • RemoteSigned — 要求从 Internet 下载的脚本必须由受信任的发布者签名。本地脚本无需签名。

为脚本签名

要对脚本签名,你需要一个代码签名证书。

  • 你可以从证书颁发机构(CA)获取证书,或使用 New-SelfSignedCertificate cmdlet 生成自签名证书。
  • 使用 Set-AuthenticodeSignature cmdlet 为脚本签名。

下面介绍如何为脚本签名。

      $cert = Get-Item Cert:\CurrentUser\My\CERT_THUMBPRINT
      
      Set-AuthenticodeSignature -FilePath "C:\Temp\Script.ps1" -Certificate $cert
      

将 CERT_THUMBPRINT 替换为证书的实际指纹(thumbprint)。

查看脚本签名状态

要验证脚本是否已签名以及签名状态,请使用:

      Get-AuthenticodeSignature -FilePath "C:\Temp\Script.ps1"
      

管理不受信任或未签名的脚本

在不完全绕过策略的情况下管理脚本权限,请考虑以下做法:

  • 如果脚本被标记为“来自 Internet”,请将其解除阻止。
  • 首次运行来自发布者的已签名脚本时,可能需要批准发布者证书。你可以使用证书管理工具将其添加为受信任。

示例:解除脚本的阻止

有时,脚本可能会因从互联网下载而被阻止。请使用 Unblock-File cmdlet 将其解除阻止,而无需绕过执行策略。

      Unblock-File -Path "C:\Temp\Script.ps1"
      

管理脚本权限

在 PowerShell 中管理脚本权限涉及控制哪些脚本可以被执行以及由谁执行。这包括配置执行策略、利用文件权限,以及使用代码签名实践。

使用 PowerShell 执行策略控制脚本执行

执行策略限制脚本可以运行的条件。不同的策略会施加不同的限制。例如,在 Restricted 策略下无法运行任何脚本。

为脚本使用代码签名

对脚本进行签名可确保在严格策略的环境中,仅受信任的脚本才能执行。

使用 NTFS 文件权限

通过修改文件或文件夹权限来限制对脚本文件的访问。下面介绍如何授予或拒绝权限。

  1. 右键单击脚本文件或文件夹,然后选择“属性”。
  2. 转到“安全(Security)”选项卡,然后单击“编辑(Edit)”。
  3. 添加或移除用户或组,并分配相应的权限(例如:读取、写入、执行)。
  4. 拒绝未授权用户的权限,以防止其执行或修改。

使用组策略控制权限

组策略可以在多台系统上强制执行脚本权限和执行策略。要配置组策略:

  1. 打开 Group Policy Management 控制台(GPMC)。
  2. 依次导航到:计算机配置 > 管理模板 > Windows 组件 > Windows PowerShell。
  3. 使用“Turn on Script Execution”策略设置所需的执行策略。

保护来自互联网源的脚本

从互联网上下载的脚本会被标记为不安全。运行前在文本编辑器中打开脚本,检查其安全性。

设置执行策略的最佳实践

正确设置 PowerShell 执行策略对于在安全性与功能性之间取得平衡至关重要。从安全角度来看,您必须理解:执行策略并不是强大的安全边界,而是用于防止脚本意外执行的工具。应将其与访问控制、脚本签名和端点防护等其他安全措施配合使用。在企业环境中,可通过组策略强制执行一致的策略,并教育用户掌握最佳实践,以最大限度地降低风险。

下面给出了一些配置执行策略、在安全性与功能性之间取得平衡的最佳实践。

使用权限最小的策略

在可能的情况下,您应应用 RestrictedAllSigned 作为执行策略,以实施更严格的控制。 RemoteSigned 适用于需要一定灵活性但仍需防范外部威胁的环境。

避免永久使用 Bypass

仅在特定自动化或故障排除场景中使用 Bypass 执行策略。任务完成后请恢复为更严格的策略。

使用数字签名

使用受信任的证书颁发机构(CA)对脚本进行签名,以确保完整性和真实性。还必须鼓励脚本开发人员对其脚本进行签名,尤其是用于 AllSigned 策略的情况。

实施监控和日志记录

启用 PowerShell 活动的日志记录(例如:脚本块日志、模块日志和转录),以检测并响应可疑活动。

使用以下 cmdlet 启用模块日志记录:

      Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\PowerShell\ModuleLogging" -Name EnableModuleLogging -Value 1
      

日志可在“事件查看器”中查看:Applications and Services Logs > Microsoft > Windows > PowerShell。

你还可以使用 Microsoft Defender for Endpoint 或 SIEM 解决方案来监控日志。

在非生产环境中测试策略

为了避免意外情况,请在将执行策略部署到整个组织之前先在受控环境中进行测试。这也能确保合法脚本和自动化工作流不会受到影响。

使用条件性策略变更

为了管理需要灵活性的工作流,请使用 -Scope Process 参数临时修改策略。cmdlet 如下:

      Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
      

应用策略时考虑运行环境

推荐的 PowerShell 执行策略会根据运行环境而有所不同。

  • 开发环境 – RemoteSigned 仍然是推荐的策略。它允许开发人员在不签名的情况下运行本地脚本,同时确保从互联网上下载的脚本已签名并受信任。您还应启用脚本块日志记录,以监控脚本执行情况。
  • 测试/预发布环境 – 使用 RemoteSigned 或 AllSigned 策略。RemoteSigned 适用于在基本完整性校验的前提下测试本地脚本与外部脚本的混合情况;而 AllSigned 通过要求所有脚本都必须签名来实施更严格的控制。
  • 生产环境 – 使用 AllSigned 或 Restricted 策略。AllSigned 可确保只执行由受信任发布者签名的脚本。然而,对于不依赖 PowerShell 脚本的环境,Restricted 是最安全的选项。您还应通过组策略强制执行策略,以确保各系统之间的一致性。
  • 自动化环境 – 建议使用 Bypass 策略(仅限特定任务)。它允许自动化任务在不中断的情况下运行,特别是在策略由其他机制(如应用程序白名单和 DevOps 管道)管理时。您还必须通过适当的访问控制并定期审计来保护自动化环境。
  • 高度安全的环境 – 应选择 Restricted 策略,因为它可以阻止任何脚本运行。

排查执行策略错误

以下是与 PowerShell 执行策略相关的常见错误及其解决方案。

“此系统上已禁用脚本的执行”

您可能会收到如下错误消息:

由于此系统已禁用脚本运行,无法加载文件 C:\Temp\Script.ps1。

原因: 执行策略设置为 Restricted 或 Undefined,这会阻止任何脚本运行。

解决方案: 检查当前策略,并针对特定会话暂时进行更改。或者,你也可以更改当前用户或计算机的策略:

要更改当前会话的策略,请使用以下 cmdlet:

      Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
      

要更改当前用户或计算机的策略,请使用以下 cmdlet:

      Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
      

“无法加载,因为脚本未进行数字签名”

您可能会收到如下错误信息:

无法加载文件 C:\Temp\Script.ps1。该文件未进行数字签名。

原因:执行策略设置为 AllSigned 或 RemoteSigned,这要求脚本必须进行签名。

解决方案:如果您信任本地脚本,请使用 RemoteSigned 而不是 AllSigned。或者您也可以临时绕过该策略。

“拒绝访问注册表项”

您可能会收到如下错误消息:

Set-ExecutionPolicy :拒绝访问注册表项。

原因:您没有足够的权限来修改 LocalMachine 范围下的执行策略。

解决方案:以管理员身份运行 PowerShell,或使用以下 cmdlet 为当前用户设置策略:

      Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
      

不同作用域之间的执行策略冲突

不同作用域(MachinePolicy、UserPolicy、Process、CurrentUser、LocalMachine)存在冲突的策略。?

原因: 更高作用域(例如 MachinePolicy)中的更严格策略会覆盖更低作用域(例如 LocalMachine)中的更宽松策略。?

解决方案:使用以下 cmdlet 检查所有作用域的策略:

      Get-ExecutionPolicy -List
      

获得这些信息后,你可以在适当的作用域中修改策略,或在具有更宽松策略的会话中运行脚本。

“无法更改执行策略,因为它由组策略对象 (Group Policy Object, GPO) 控制”

当执行策略由组策略(Group Policy)强制执行时,就会出现此问题,从而阻止对本地进行更改。

解决方案:请与系统管理员协商以修改组策略(Group Policy)。不过,为了快速解决问题,你可以暂时绕过该策略。

“未识别的策略作用域”

你可能会收到如下错误消息:

Set-ExecutionPolicy:无法识别指定的作用域。

原因:作用域名称中有拼写错误。

解决方案:请确保作用域已正确指定为以下选项之一。

不同 PowerShell 版本中的意外行为

较旧的 PowerShell 版本(例如 2.0)会以不同方式处理执行策略,或缺少某些功能。

解决方案:升级到最新版本的 PowerShell。

被标记为已阻止的脚本

你可能会收到如下错误信息:

无法加载文件。该文件未进行数字签名,或从互联网下载后被阻止。

原因:脚本被标记为已阻止,因为它是从互联网下载的。

解决方案:使用以下 cmdlet 解除脚本的阻止:

      Unblock-File -Path C:\Temp\Script.ps1
      

结论:选择合适的 PowerShell 执行策略

在选择有效的执行策略时,必须考虑这些因素。

  • 在选择执行策略之前先确定运行环境,因为不同环境需要不同的策略。例如,对于生产服务器,使用 AllSigned 或 RemoteSigned 最适合在一定程度上强制进行脚本验证。
  • 还应评估您的安全需求并据此做出决定。例如,如果您已经建立了完善的代码签名流程,并希望对脚本执行实施严格控制,请使用 AllSigned。或者,对不应运行脚本的系统使用 Restricted。
  • 考虑您的自动化需求。在脚本由受信任的进程自动运行的环境中,使用 Bypass 策略会更简单。
  • 最后,评估脚本的来源。如果脚本来自内部且值得信任,RemoteSigned 能在可用性与安全性之间提供平衡。如果脚本既包含内部也包含外部来源,请考虑使用 AllSigned 以增强安全性。

常见问题(FAQs)

$env:psexecutionpolicypreference 变量是什么?

$env:PSExecutionPolicyPreference 环境变量用于在 PowerShell 中,临时覆盖单个会话的执行策略,而不会更改全局系统或针对用户的执行策略。关闭会话后,此更改将丢失。

你可以使用 $env:psexecutionpolicypreference ,方式如下:

  • $env:PSExecutionPolicyPreference 赋值,以临时更改执行策略,如下所示:

$env:PSExecutionPolicyPreference = “Bypass”

之后,在整个会话期间,脚本将不受限制地运行。

  • 如下面所示,检查该变量的当前值:

$env:PSExecutionPolicyPreference

  • 移除临时策略,并恢复为默认行为,如下所示:

Remove-Item Env:PSExecutionPolicyPreference

分享到

了解更多

关于作者

Asset Not Found

Jonathan Blackwell

软件开发负责人

自 2012 年以来,工程师兼创新者 Jonathan Blackwell 一直提供工程领导力,使 Netwrix GroupID 成为 Active Directory 和 Azure AD 环境中群组与用户管理领域的领先者。他在研发、市场与销售方面的经验,使 Jonathan 能够全面理解 Identity 市场以及买家如何思考。