Windows Tips & News

Как да промените политиката за изпълнение на PowerShell в Windows 10

click fraud protection

По подразбиране PowerShell ограничава изпълнението на скриптове на компютри на крайни потребители. Тази настройка е добра от гледна точка на сигурността. Въпреки това, ако използвате много скриптове, които сте изтеглили или кодирали сами, това може да бъде наистина досадно. В тази статия ще разгледаме как да промените правилата за изпълнение по подразбиране за скриптове на PowerShell в Windows 10.

Windows PowerShell има четири различни правила за изпълнение:

  • Ограничено – не могат да се изпълняват скриптове. Windows PowerShell може да се използва само в интерактивен режим.
  • AllSigned – Могат да се изпълняват само скриптове, подписани от доверен издател.
  • RemoteSigned – Изтеглените скриптове трябва да бъдат подписани от доверен издател, преди да могат да се изпълняват.
  • Неограничен - Без ограничения; всички скриптове на Windows PowerShell могат да се изпълняват.
  • Undefined - Не е зададена политика за изпълнение.

Ако политиката за изпълнение не е зададена и не е конфигурирана, тя се показва като "Недефинирана". Ето как можете да видите текущата стойност.

Как да видите правилата за изпълнение на PowerShell

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

Командата ще покаже всички правила за изпълнение. Както можете да видите, има редица области, за които може да се дефинира политиката за изпълнение. Може да се настрои глобално за всички потребители, само за текущия потребител или за текущия процес. Текущата политика на процеса има приоритет над настройките на текущия потребител. Текущата потребителска политика отменя глобалната опция. Имайте това предвид. Сега нека видим как да променим политиката за изпълнение на скриптове за PowerShell.

Променете политиката за изпълнение на PowerShell за процес

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

Това ще стартира вашия скрипт с помощта на политиката за неограничено изпълнение. Вместо скрипта, можете да стартирате командлет или каквото искате. Вместо „Неограничено“, можете да използвате всяка друга политика, спомената по-горе.

Съвет: За отворена конзола PowerShell можете да превключите правилата за изпълнение с помощта на командата:

Set-ExecutionPolicy Unrestricted -Scope Proces

Той ще остане активен, докато не затворите текущия прозорец на PowerShell.

Променете политиката за изпълнение на PowerShell за текущия потребител

  1. Отворете PowerShell.
  2. Въведете или копирайте и поставете следната команда и натиснете клавиша Enter:
    Set-ExecutionPolicy Unrestricted -Scope CurrentUser

Съвет: Ако правилото не е зададено след командата по-горе, опитайте да го комбинирате с аргумента -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, Undefined.
  4. За да промените политиката за изпълнение за обхвата на LocalMachine, отидете на.
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft. PowerShell
  5. Задайте стойността на низа ExecutionPolicy на една от следните стойности: Restricted, AllSigned, RemoteSigned, Unrestricted, Undefined.

Съвет: Вижте как да отидете до ключ в системния регистър с едно щракване. Освен това можете бързо превключвайте между HKCU и HKLM в редактора на системния регистър на Windows 10.

Това е.

Изтеглете архивите на системния регистър и пакетните файлове

Този уебсайт използва бисквитки, за да подобри вашето изживяване, докато навигирате през уебсайта...

Прочетете още

Sticky Notes получава етикети и режим на уголемяване

Този уебсайт използва бисквитки, за да подобри вашето изживяване, докато навигирате през уебсайта...

Прочетете още

Нулиране на Hosts файла обратно към настройките по подразбиране в Windows

Нулиране на Hosts файла обратно към настройките по подразбиране в Windows

ПРЕПОРЪЧВА: Щракнете тук, за да коригирате проблеми с Windows и да оптимизирате производителностт...

Прочетете още