Является ли установка executionpolicy на unrestricted for currentuser нарушением безопасности?

У меня есть несколько псевдонимов, которые мне нравятся в PowerShell в Windows 10.

Я хочу, чтобы они сохранялись между сеансами, поэтому я поместил их в файл profile.ps1 в папку C: \ Users {username} \ Documents \ WindowsPowerShell.

Я получаю раздражающее сообщение «не может быть загружен, потому что в этой системе отключены запускаемые скрипты». сообщение об ошибке и нашли эту страницу о том, как от нее избавиться: https://social.technet.microsoft.com/Forums/en-US/3e4a9006-d47d-4e19-96f4-10327ae0c5b1/not-able-to-run-script-in-windows-10?forum=winserverpowershell

Здесь кто-то говорит, что эта строка поможет:

Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force -Verbose

Но опасно ли просто установить неограниченную политику выполнения для моего пользователя?

На самом деле я планирую проголосовать, чтобы закрыть это предложение, поскольку оно в основном основано на мнении. Итак, вот мое мнение. Это менее безопасно? Вероятнее всего. Это нарушение безопасности? Что ж, это зависит от вашего определения нарушения безопасности. Лично я установил свою политику выполнения на RemoteSigned. Это означает, что у меня может быть профиль, но я не могу запускать скрипты, загруженные из Интернета, без предварительного изменения их ADS.

EBGreen 11.04.2018 14:16

На самом деле наличие профиля - не причина, по которой я использую RemoteSigned. Я понял, что это может ввести в заблуждение. Я мог бы подписать профиль, если бы захотел. Причина, по которой я использую RemoteSigned, заключается в том, что я часто провожу свой день, тестируя методы в PowerShell и показывая другим людям, которые только что подходят к моему столу, как делать что-то в PowerShell. Часто путем быстрого создания сценария для того, что они хотят. Не стоит подписывать эти маленькие 10-20 строчные скрипты каждый раз, когда я их создаю. Но это моя среда и то, как я использую PowerShell. Вы должны сами принимать эти решения.

EBGreen 11.04.2018 14:28

Политика выполнения - это функция безопасности, а не функция безопасности. Независимо от политики выполнения, мы все равно можем запускать сценарии, задав политику выполнения для процесса PowerShell, и для этого не требуются повышенные привилегии. Ограничивающая политика выполнения только помогает предотвратить случайный запуск пользователем сценария, которого он не должен. Это вообще не помешает пользователю запустить какой-либо скрипт.

Bill_Stewart 11.04.2018 16:14
3
3
2 164
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

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

Ваша аналогия более кратко выражает то, что я пытался сказать; Благодарю.

Bill_Stewart 11.04.2018 19:42

Другие вопросы по теме