Я использую Windows Server 2008 в качестве администратора и попытался установить для параметра ExecutionPolicy значение Remotesigned для PowerShell v2, например:
Set-ExecutionPolicy RemoteSigned
Но я получил эту ошибку:
Set-ExecutionPolicy : Access to the registry key 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft
.PowerShell' is denied.
At line:1 char:20
+ Set-ExecutionPolicy <<<< RemoteSigned
+ CategoryInfo : NotSpecified: (:) [Set-ExecutionPolicy], UnauthorizedAccessException
+ FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyComma
nd
Как это исправить?
windows-server-2008
powershell
atricapilla
источник
источник
-Scope CurrentUser
как следует Janus ответСтивен Дженнингс в ответ на тот же вопрос о StackOverflow:
Это установит политику выполнения для текущего пользователя (хранится в HKEY_CURRENT_USER), а не на локальном компьютере (HKEY_LOCAL_MACHINE).
источник
В случае, если «Запуск от имени администратора» не работает для вас (сначала не для меня) или если вы хотите постоянное решение, я нашел решение, добавив разрешения непосредственно в реестр Windows. После этого, когда я вызвал get-ExecutionPolicy, он больше не возвращался ограниченным.
Это эквивалент set-ExecutionPolicy RemoteSigned, с которым он действительно работает.
Написал об этом здесь: http://kyleclegg.com/powershell/
Надеюсь это поможет.
источник
Я обнаружил, что единственное решение этой ошибки, которое сработало для меня, - это запустить regedt32 и перейти к ключу, а затем изменить права доступа пользователей для чтения на полный контроль. Локальные разрешения на сервере имеют прецедент с правами администратора домена.
источник