PowerShell: Скриптирането е деактивирано в тази система

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

А скрипт е проста програма, написана на код, който работи линейно на нашия компютър. Можем да създаваме и изпълняваме собствени скриптове за автоматизиране на задачи или приложенията да ги изпълняват, за да изпълняват специфични конфигурации и задачи. По подразбиране Windows 10 не пречи на приложенията или на нас да стартираме скриптове в системата, ако те са подписани или „родни“. Проблемът възниква, когато стартираме нашия скрипт и получаваме грешката „ Скриптирането е деактивирано в тази система “. Това е слоеста мярка за сигурност в PowerShell, която предотвратява стартирането на злонамерени скриптове и може да навреди на вашата система. Нека да разгледаме как да променим политиките за сигурност на PowerShell .

Правила за изпълнение на скрипта на PowerShell

Ако видите грешката „ Скриптирането е деактивирано в тази система “, тогава можем да проверим конфигурацията на правилата, за да стартираме скриптове, конфигурирани в Windows 10. Отворете PowerShell като администратор и:

  • Get-ExecutionPolicy -List

Можем да видим няколко нива на разрешение за изпълнение на скриптове.

Конфигурация на политиката на Powershell

За да промените политиката за изпълнение на скрипта, трябва да сте наясно с различните нива на привилегии, които можем да присвоим на всяка от областите.

  • Ограничено : Всички скриптове са блокирани, но са разрешени интерактивни команди.
  • RemoteSigned : Качените скриптове трябва да бъдат подписани от доверен издател. Локалните скриптове се изпълняват неподписани
  • AllSigned : Позволява изпълнение на всеки подписан скрипт, както локален, така и отдалечен (зареден).
  • Неограничен : Неограничен. Можете да стартирате всички скриптове, дори тези, които не са подписани.

След като знаете условията и ограниченията на скриптовете, можете да ги промените. Например, за да поправите грешката „ Скриптирането е деактивирано в тази система “, трябва да въведете само един аплет. Отворете PowerShell като администратор и:

  • Set-ExecutionPolicy Unrestricted -Scope CurrentUser - стартиране без ограничение за потребителя.
  • Set-ExecutionPolicyRestricted -Scope CurrentUser върнете се обратно, ако е необходимо.

Позволява неограничен скрипт за локален потребител. В ключа -Scope определя какво промяната на правилата се отнася за. Когато въведете „ CurrentUser “, това се отнася само за текущия потребител, а когато въведете „ LocalMachine “, то се отнася за цялата система.

Позволява неограничен скрипт за локален потребител

Ако горният метод не ви е помогнал да стартирате вашия скрипт и се появи грешката „ Скриптирането е деактивирано в тази система“ , тогава можете напълно да премахнете ограниченията. Трябва да разберете, че това е голям риск и вашият скрипт трябва да бъде на 101% защитен. Отворете PowerShell като администратор и:

  • Set-ExecutionPolicy Unrestricted - позволяват изпълнението на скриптове без ограничения.
  • Set-ExecutionPolicy Restricted- върнете се по подразбиране.

позволяват изпълнение на скриптове без ограничения