tutorial simple scripts script programas lenguaje hechos for first exercises example creating create beginners windows-7 powershell

simple - PowerShell en Windows 7: Set-ExecutionPolicy para usuarios regulares



simple powershell script (3)

Quiero ejecutar scripts de PowerShell en Windows 7 como un usuario normal. Cada vez que lo intento, obtengo el siguiente error:

File C:/Users/danv/Documents/WindowsPowerShell/profile.ps1 cannot be loaded because the execution of scripts is disabled on this system. Please see "get-help about_signing" for more details. At line:1 char:2 + . <<<< ''C:/Users/danv/Documents/WindowsPowerShell/profile.ps1'' + CategoryInfo : NotSpecified: (:) [], PSSecurityException + FullyQualifiedErrorId : RuntimeException

Intentando resolver a través de Set-ExecutionPolicy Unrestricted falla:

PS C:/Users/danv> Set-ExecutionPolicy Unrestricted 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 <<<< Unrestricted + CategoryInfo : NotSpecified: (:) [Set-ExecutionPolicy], UnauthorizedAccessException + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyCommand

Puedo ejecutar el comando Set-ExecutionPolicy Unrestricted como administrador, pero parece que no se propaga a los usuarios que no son administradores.

¿Cómo puedo ejecutar scripts exitosamente como no administrador?


Esto debería resolver su problema. Intente ejecutar lo siguiente a continuación:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser 


Si usted (o un administrador útil) ejecuta Set-ExecutionPolicy como administrador, la política se establecerá para todos los usuarios. (Sugeriría "remoteSigned" en lugar de "irrestricto" como medida de seguridad).

NB .: en un sistema operativo de 64 bits, debe ejecutar Set-ExecutionPolicy para PowerShell de 32 y 64 bits por separado.


Set-ExecutionPolicy Unrestricted -Scope CurrentUser

Esto establecerá la política de ejecución para el usuario actual (almacenado en HKEY_CURRENT_USER) en lugar de la máquina local (HKEY_LOCAL_MACHINE). Esto es útil si no tiene control administrativo sobre la computadora.