Come impostare ExecutionPolicy: accesso alla chiave di registro negato


22

Sto eseguendo Windows Server 2008 come amministratore e ho provato a impostare ExecutionPolicy come Remarksigned per PowerShell v2 in questo modo:

Set-ExecutionPolicy RemoteSigned

Ma ho questo errore:

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

Come risolvere questo?

Risposte:


24

Fai clic destro sul collegamento Powershell e scegli "Esegui come amministratore"


5
Inoltre, se si dispone di un sistema operativo a 64 bit, è necessario impostare i criteri di esecuzione per la versione a 32 e 64 bit di PowerShell.
Joey,

Non è necessario eseguirlo come amministratore, basta eseguirlo -Scope CurrentUsercome suggerisce la risposta di Janus
CharlesB,

12

Stephen Jennings in risposta al stessa domanda su StackOverflow:

Set-ExecutionPolicy Unrestricted -Scope CurrentUser

Ciò imposterà il criterio di esecuzione per l'utente corrente (archiviato in HKEY_CURRENT_USER) anziché il computer locale (HKEY_LOCAL_MACHINE).


3
Grazie. Questa è la risposta corretta, non tutti hanno i privilegi di amministratore, ma funziona ancora.
Charles Clayton,

4

Nel caso in cui "Esegui come amministratore" non funziona per te (inizialmente non per me) o se desideri una soluzione permanente, ho trovato una soluzione aggiungendo le autorizzazioni direttamente al registro di Windows. Dopo aver fatto questo quando ho chiamato get-ExecutionPolicy non è più tornato limitato.

È l'equivalente di set-ExecutionPolicy RemoteSigned, con effettivamente funzionante.

Ne ho parlato qui: http://kyleclegg.com/powershell/

Spero che sia di aiuto.


0

Ho scoperto che l'unica soluzione a questo errore che ha funzionato per me era eseguire regedt32 e approfondire la chiave, quindi modificare le autorizzazioni per gli utenti dalla lettura al controllo completo. Le autorizzazioni locali sul server hanno la precedenza sui diritti di amministratore del dominio.


Non proprio una buona risposta, date le altre due risposte già presenti ...
HopelessN00b
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.