Как изменить политику выполнения PowerShell в Windows 10

По умолчанию PowerShell ограничивает выполнение сценариев на ПК конечных пользователей. Этот параметр хорош с точки зрения безопасности. Однако, если вы используете много скриптов, которые вы скачали или написали самостоятельно, это может сильно раздражать. В этой статье мы рассмотрим, как изменить политику выполнения по умолчанию для сценариев PowerShell в Windows 10.

Windows PowerShell имеет четыре разные политики выполнения:

  • Restricted — ни один скрипт не может быть запущен. Windows PowerShell можно использовать только в интерактивном режиме.
  • AllSigned — можно запускать только сценарии, подписанные доверенным издателем.
  • RemoteSigned — загруженные сценарии должны быть подписаны доверенный издатель, прежде чем их можно будет запустить.
  • Неограниченный — без ограничений; можно запускать все сценарии Windows PowerShell.
  • Не определено — политика выполнения не задана.

Если политика выполнения не задана и не настроена, он отображается как «Не определено». Вот как вы можете увидеть текущее значение.

Как увидеть политику выполнения PowerShell

  1. Откройте PowerShell.
  2. Введите или скопируйте и вставьте следующую команду и нажмите клавишу Enter:
     Get-ExecutionPolicy -List 

Команда отобразит все политики выполнения. Как видите, существует ряд областей, для которых можно определить политику выполнения. Его можно установить глобально для всех пользователей, только для текущего пользователя или для текущего процесса. Текущая политика процесса имеет приоритет над настройками текущего пользователя. Текущая политика пользователя имеет приоритет над глобальным параметром. Имейте это в виду. Теперь давайте посмотрим, как изменить политику выполнения сценария для PowerShell.

Изменить политику выполнения PowerShell для процесса

  1. Откройте командную строку или PowerShell.
  2. Запустите файл powershell.exe с аргументом -ExecutionPolicy Unrestricted. Например,
     Powershell.exe -ExecutionPolicy Unrestricted -File c:  data  test.ps1 

Это запустит ваш скрипт с использованием неограниченного выполнения политика. Вместо сценария вы можете запустить командлет или что хотите. Вместо «Без ограничений» вы можете использовать любую другую политику, упомянутую выше.

Совет: для открытой консоли PowerShell вы можете переключить политику выполнения с помощью команды:

 Set-ExecutionPolicy Unrestricted -Scope Process 

Он будет оставаться активным, пока вы не закроете текущее окно PowerShell.

Изменить политику выполнения PowerShell для текущего пользователя

  1. Откройте PowerShell.
  2. Введите или скопируйте и вставьте следующую команду и нажмите клавишу Enter:
     Set-ExecutionPolicy Unrestricted -Scope CurrentUser 
  3. ол>

    Совет: если политика не установлена ​​после приведенной выше команды, попробуйте объединить ее с аргументом -Force, например:

     Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force 

    Когда политика выполнения установлена ​​для текущего пользователя, она переопределит область «LocalMachine». Опять же, для процесса вы можете переопределить ее для текущего экземпляра PowerShell, как описано выше.

    Изменить глобальную политику выполнения PowerShell

    Эта политика выполнения применяется к компьютеру, что означает, что она эффективна для тех учетных записей пользователей, к которым политика выполнения не применяется индивидуально. применяться ко всем учетным записям пользователей.

    Чтобы изменить политику выполнения PowerShell в Windows 10 , выполните следующие действия.

    1. Откройте PowerShell от имени администратора.
    2. Выполните следующую команду:
       Set-ExecutionPolicy Unrestricted -Scope LocalMachine 

    Готово.

    Изменить политику выполнения PowerShell с помощью настройки реестра

    Можно изменить политику выполнения с помощью настройки реестра как для текущего пользователя, так и для компьютера. Вот как это можно сделать.

    1. Откройте редактор реестра.
    2. Чтобы изменить политику выполнения для текущего пользователя, перейдите в
       HKEY_CURRENT_USER  SOFTWARE  Microsoft  PowerShell  1  ShellIds  Microsoft.PowerShell 
    3. Установите для строкового значения ExecutionPolicy одно из следующих значений: Restricted, AllSigned, RemoteSigned, Unrestricted , Не определено.
    4. Чтобы изменить политику выполнения для области LocalMachine, перейдите в
       HKEY_LOCAL_MACHINE  SOFTWARE  Microsoft  PowerShell  1  ShellIds  Microsoft.PowerShell 
    5. Установите для строкового значения ExecutionPolicy одно из следующих значений: Restricted, AllSigned, RemoteSigned, Unrestricted, Undefined.

    Совет: узнайте, как перейти к разделу реестра одним щелчком мыши. Кроме того, вы можете быстро переключаться между HKCU и HKLM в редакторе реестра Windows 10.

Оцените статью
digitdocom.ru
Добавить комментарий