Para permitir la ejecución de scripts PowerShell (.ps1) en Windows, sigue estos pasos:
- Abrir PowerShell como administrador
- Presiona
Win + S
, escribe PowerShell, haz clic derecho y selecciona Ejecutar como administrador.
- Presiona
- Comprobar la política de ejecución actual
Escribe el siguiente comando y presiona Enter:Get-ExecutionPolicy
Esto mostrará la política de ejecución actual. Por defecto, suele ser Restricted, lo que impide la ejecución de scripts. - Cambiar la política de ejecución
Para permitir la ejecución de scripts, usa uno de estos comandos según el nivel de permisividad que desees:- RemoteSigned (recomendado): Permite scripts locales sin firma, pero los scripts remotos necesitan estar firmados.
Set-ExecutionPolicy RemoteSigned
- Unrestricted: Permite todos los scripts, pero muestra advertencias para scripts no firmados.
Set-ExecutionPolicy Unrestricted
- RemoteSigned (recomendado): Permite scripts locales sin firma, pero los scripts remotos necesitan estar firmados.
- Si no tienes permisos para cambiar la política global
Si encuentras errores al intentar cambiar la política, puedes configurarla solo para el usuario actual con este comando:Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
Poner el valor de ExecutionPolicy: 1 para permitir la ejecucion de scripts.
Poner el valor de ExecutionPolicy: 0 para denegar la ejecucion de scripts. - Confirmar el cambio
Si aparece un mensaje de confirmación, escribeY
y presiona Enter. - Verificar el cambio
Ejecuta nuevamente:Get-ExecutionPolicy -List
Esto mostrará la política aplicada en los diferentes alcances (LocalMachine y CurrentUser). - Ejecutar el script
Ve al directorio donde se encuentra el script usandocd
y luego ejecútalo así:.\nombre_del_script.ps1
Nota de seguridad:
- Usa la política Unrestricted solo si confías plenamente en los scripts que vas a ejecutar.
- Puedes revertir el cambio ejecutando:
Set-ExecutionPolicy Restricted
o
Set-ExecutionPolicy Restricted -Scope CurrentUser