3

Я знаю, что вы можете обойти текущую политику выполнения в PowerShell, передав в командной строке -ExecutionPolicy Bypass , но что это на самом деле делает?

Я знаю, что он позволяет запускать сценарии, но я предполагаю, что он мешает обычному пользователю запускать командлеты, которые могут поставить под угрозу систему / сеть?

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

Сценарий выглядит так:

$app = "C:\Path\To\Application.exe"
$path = "C:\Path\To\File.dat"
$switches = @('/switch1', '/switch2', '/switch3')

Start-Process $app "-File ""$path"" ""$switches"""

1 ответ1

2

Давайте начнем с базового стандартного ExecutionPolicy который Restricted:

Restricted
1. Permits individual commands, but will not run scripts.
2. Prevents running of all script files, including formatting and configuration files (.ps1xml), module script files (.psm1), and Windows PowerShell profiles (.ps1).

Если вы обойдете ExecutionPolicy , вы разрешите запуск любого сценария Windows PowerShell, либо он создан кем-то внутри, либо загружен ...

Bypass
1. Nothing is blocked and there are no warnings or prompts.
2. This execution policy is designed for configurations in which a Windows PowerShell script is built in to a larger application or for configurations in which Windows PowerShell is the foundation for a program that has its own security model.

Вы, вероятно, лучше всего установите для параметра ExecutionPolicy значение RemoteSigned (следовательно, для подписи сценариев PowerShell) или « Unrestricted (чтобы те, кто запускают этот сценарий, гарантировали, что он правильный, поскольку они получат всплывающее окно).

Вы можете более подробно ознакомиться с каждым типом ExecutionPolicy в статье Microsoft о about_ExecutionPolicies .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .