Cómo ejecutar scripts no firmados en PowerShell
Hola, soy Francisco, del equipo de soporte a Sistema Operativo. Hoy vamos a ver cómo poder ejecutar scripts no firmados en PowerShell.
En alguna ocasión crearemos algún script en Powershell y a la hora de ejecutar nos puede salir un mensaje como este:
PS C:\Windows\system32> C:\TOOLS\SPLITTEXT.PS1
No se puede cargar el archivo C:\TOOLS\SPLITTEXT.PS1. El archivo C:\TOOLS\SPLITTEXT.PS1 no está firmado digitalmente.
El sistema operativo para protegernos de la ejecución de código malicioso impedirá en primera instancia la ejecución de cualquier script.
Para verificar como está configurado el sistema operativo en lo que se refiere a la directiva de ejecución de script, escribir este comando:
Get-ExecutionPolicy
Pero si realmente necesitamos ejecutar el script porque nosotros somos los creadores, podemos permitir temporalmente permitir la ejecución con el comando (habiendo iniciado powershell como administrador)
Set-ExecutionPolicy RemoteSigned
[S] Sí [N] No [U] Suspender [?] Ayuda (el valor predeterminado es "S"): s
(Este comando permitirá los script en la maquina local)
Si queremos permitir la ejecución de todos aunque no estén en local:
Set-ExecutionPolicy Unrestricted
[S] Sí [N] No [U] Suspender [?] Ayuda (el valor predeterminado es "S"): s
Y si finalmente queremos dejar como estaba en un principio (o para no permitir la ejecución de nada que este firmado)
Set-ExecutionPolicy AllSigned
[S] Sí [N] No [U] Suspender [?] Ayuda (el valor predeterminado es "S"): s
Si estamos interesados en conocer como firmar nuestros scripts consultar:
Get-Help About_Signing
Un saludo,
- Francisco Fraile Cortijo
Comments
- Anonymous
October 07, 2015
mi laptop esta vien nadamas es que no esta activado elscript. y no se como activarlo. devido a eso no me da mis arcivos y tamc vien lo demas - Anonymous
October 07, 2015
me podra eseñas a ponerlo - Anonymous
October 07, 2015
me podra eseñas a ponerlo