Execution Policy

Добрый всем день.

Для защиты от вредоносного кода в PS реализована система безопасности основанная на политиках выполнения. Каждая политика — это некий свод правил, которые определяют какой код можно выполнять, а какой нет. Каждый повершел сценарий может быть подписан цифровой подписью, что позволяет точно идентифицировать автора данного скрипта.

Существуют следующие политики выполнения (Execution Policy):

  • Restricted — разрешает запуск любых команд, однако запрещает запуск любых скриптов.
  • AllSigned — разрешает запуск любых команд, разрешает запуск скриптов подписанных сертификатом доверенного издателя.
  • RemoteSigned — разрешает запуск любых команд, разрешает запуск скаченных из Интернета скриптов подписанных сертификатом доверенного издателя, разрешает запуск любых скриптов не скаченных из Интернета, даже без цифровой подписи.
  • Unrestricted — разрешает запуск любых команд и любых скриптов. Спрашивает уведомление при запуске скриптов скаченных из Интернета.
  • Bypass — разрешает запуск любых команд и любых скриптов.
  • Undefined — политика не установлена.

Как вы понимаете для личного пользования рекомендуется использовать политику RemoteSigned. Она позволяет в полной мере насладится возможностями написания собственных сценариев повершел, однако реализует минимальный уровень безопасности. Для работы в корпоративной среде лучше подойдет политика AllSigned. Она обеспечит больший уровень безопасности.

Политики Execution Policy могут быть определены на следующих уровнях:

  • Process — политика выполнения для текущего сеанса PowerShell. Устанавливается при запуске повершела «powershell -executionpolicy restricdet»
  • CurrentUser — политика установленная для текущего пользователя.
  • LocalMachine — политика установленная для компьютера.

Из всего вышесказанного можно сделать короткий вывод, что для работы в копроративной среде необходимо установить ExecutionPolicy в значение AllSigned на уровне LocalMachine.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *