По подразбиране PowerShell ограничава работещите скриптове на персонални компютри. Тази настройка е добра от гледна точка на сигурността. Ако обаче използвате много скриптове, които сте изтеглили или кодирали сами, това може да бъде наистина досадно. В тази статия ще разгледаме как да промените политиката по подразбиране за изпълнение на скриптове PowerShell в Windows 10.
Реклама
Windows PowerShell има четири различни правила за изпълнение:
- Ограничено - не могат да се изпълняват скриптове. Windows PowerShell може да се използва само в интерактивен режим.
- AllSigned - могат да се изпълняват само скриптове, подписани от доверен издател.
- RemoteSigned - Изтеглените скриптове трябва да бъдат подписани от доверен издател, преди да могат да бъдат стартирани.
- Неограничен - Без ограничения; всички скриптове на Windows PowerShell могат да се изпълняват.
- Неопределено - не е зададена политика за изпълнение.
Ако политиката за изпълнение не е зададена и не е конфигурирана, тя се показва като „Неопределена“. Ето как можете да видите текущата стойност.
Как да видите политиката за изпълнение на PowerShell
- Отворете PowerShell .
- Въведете или копирайте и поставете следната команда и натиснете клавиша Enter:
Get-ExecutionPolicy -List
Командата ще покаже всички политики за изпълнение. Както можете да видите, има редица обхвати, за които може да се дефинира политиката за изпълнение. Може да се зададе глобално за всички потребители, само за текущия потребител или за текущия процес. Текущата политика на процеса има приоритет над текущите настройки на потребителя. Текущата политика на потребителя заменя глобалната опция. Имайте това предвид. Сега да видим как да променим политиката за изпълнение на скрипта за PowerShell.
Променете политиката за изпълнение на PowerShell за процес
- Отворете a командния ред или PowerShell.
- Стартирайте файла powershell.exe с аргумента -ExecutionPolicy Unrestricted. Например,
Powershell.exe -ExecutionPolicy Unrestricted -Файл c: data test.ps1
Това ще стартира вашия скрипт, като използва политиката за неограничено изпълнение. Вместо скрипта можете да стартирате кратка команда или каквото искате. Вместо „Неограничен“, можете да използвате всяка друга политика, спомената по-горе.
Съвет: За отворена конзола PowerShell можете да превключвате политиката за изпълнение с помощта на командата:
Set-ExecutionPolicy Unrestricted -Scope Process
Той ще остане активен, докато не затворите текущия прозорец на PowerShell.
Променете политиката за изпълнение на PowerShell за текущия потребител
- Отворете PowerShell.
- Въведете или копирайте и поставете следната команда и натиснете клавиша Enter:
Set-ExecutionPolicy Unrestricted -Scope CurrentUser
Съвет: Ако правилото не е зададено след командата по-горе, опитайте се да го комбинирате с аргумента -Force, по следния начин:
Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
Когато политиката за изпълнение е зададена за текущия потребител, тя ще замени обхвата „LocalMachine“. Отново, за процес можете да го замените за текущия екземпляр на PowerShell, както е описано по-горе.
Променете глобалната политика за изпълнение на PowerShell
Тази политика за изпълнение се прилага за компютъра, което означава, че е ефективна за тези потребителски акаунти, които нямат политика за изпълнение, приложена индивидуално. С настройките по подразбиране той ще бъде приложен към всички потребителски акаунти.
За да промените политиката за изпълнение на PowerShell в Windows 10 , направете следното.
- Отворете PowerShell като администратор .
- Изпълнете следната команда:
Set-ExecutionPolicy Unrestricted -Scope LocalMachine
Ти си готов.
Променете политиката за изпълнение на PowerShell с настройка на системния регистър
Възможно е да промените политиката за изпълнение с настройка на системния регистър както за текущия потребител, така и за компютъра. Ето как може да се направи.
- Отвори Редактор на регистъра .
- За да промените политиката за изпълнение за текущия потребител, отидете на
HKEY_CURRENT_USER SOFTWARE Microsoft PowerShell 1 ShellIds Microsoft.PowerShell
- Задайте низовата стойност ExecutionPolicy на една от следните стойности: Restricted, AllSigned, RemoteSigned, Unrestricted, Undefined.
- За да промените политиката за изпълнение за обхвата LocalMachine, отидете на
HKEY_LOCAL_MACHINE SOFTWARE Microsoft PowerShell 1 ShellIds Microsoft.PowerShell
- Задайте низовата стойност ExecutionPolicy на една от следните стойности: Restricted, AllSigned, RemoteSigned, Unrestricted, Undefined.
Съвет: Вижте как да отидете до ключ на системния регистър с едно щракване . Също така можете превключвайте бързо между HKCU и HKLM в редактора на системния регистър на Windows 10 .
как да летя в режим на оцеляване -
Това е.