Escolar Documentos
Profissional Documentos
Cultura Documentos
CursobsicodePowershell:Ejecucindescripts
9 julio, 2013
PowerShell
7,121 Vistas
Cuando queremos ejecutar scripts de Powershell en un equipo con Windows tenemos que tener en
cuenta la directiva de seguridad que se aplica para poder ejecutar scripts y comandos.
Si queremos ejecutar un simple script como el siguiente:
Ejemplo bsico
Nos encontramos con que no podemos ejecutarlo.
Ejecucin denegada
Vamos a explicar por qu. Las directivas de ejecucin de Windows PowerShell nos indican si podemos
ejecutar scripts o no con el objetivo de controlar que sabemos que script estamos ejecutando. Hay que
indicar que las directivas no se preocupan del contenido del script sino de si se puede ejecutar o no. Las
directivas pueden tomar los siguientes valores:
Restricted
Directiva de ejecucin predeterminada.
Admite comandos individuales, pero no permite ejecutar scripts.
Evita que se ejecuten todos los archivos de script, incluidos los archivos de formato y configuracin
(.ps1xml), los archivos de script de mdulos (.psm1) y los perfiles de Windows PowerShell (.ps1).
AllSigned
Permite ejecutar scripts.
Requiere que todas los scripts y archivos de configuracin estn firmados por un editor de confianza,
incluidos los scripts que se escriben en un equipo local.
Pide confirmacin antes de ejecutar los scripts de editores que no se han clasificado para indicar si son
de confianza o no.
Se corre el riesgo de ejecutar scripts sin firmar procedentes de orgenes distintos de Internet y
malintencionados, aunque estn firmados.
RemoteSigned
http://www.maquinasvirtuales.eu/cursobasicodepowershellejecuciondescripts/
1/4
3/11/2016
CursobsicodePowershell:Ejecucindescripts
http://www.maquinasvirtuales.eu/cursobasicodepowershellejecuciondescripts/
2/4
3/11/2016
CursobsicodePowershell:Ejecucindescripts
LocalMachine: La directiva de ejecucin afecta a todos los usuarios del equipo actual. Se almacena en la
subclave HKEY_LOCAL_MACHINE del Registro.
Obtener la directiva de ejecucin
Obtenemos las directivas con el comando Get-ExecutionPolicy.
1 GetExecutionPolicy
Obteniendo la directiva
Cambiar la directiva
Para poder realizar un cambio en la directiva utilizamos el cmdlet Set-ExecutionPolicy
Por defecto, si no indicamos el parmetro Scope, se cambia en el mbito LocalMachine
Cambiando la diectiva
Pero indicando el parmetro Scope seleccionamos en que mbito queremos que se ejecute.
Cambiando la directiva
Advertenciadeseguridad
Ejecuteslolosscriptsdeconfianza.LosarchivosprocedentesdeInternet
puedensertiles,peroalgunosarchivospodrandaarsuequipo.Desea
ejecutar
Script.ps1?
[N]Noejecutar[Z]Ejecutarunavez[U]Suspender[?]Ayuda
(elvalorpredeterminadoes"N"):
Podemos ejecutar el script con el parmetro -ExecutionPolicy para definir la directiva para esa ejecucin,
por ejemplo:
1 powershell.exeExecutionPolicyBypassEjemplo.ps1
http://www.maquinasvirtuales.eu/cursobasicodepowershellejecuciondescripts/
3/4
3/11/2016
CursobsicodePowershell:Ejecucindescripts
Temas
1. Introduccin
2. Instalacin y requerimientos
3. Ayuda
4. Ampliando la funcionalidad
5. Canalizacin
6. Operadores
7. Comandos bsicos
8. Formato de salida
9. Importar y Exportar datos
10. Arrays y HashTables
11. Ejecucin de Scripts
12. Providers
13. Trabajos
14. Scripts y funciones
15. Gestin de Errores
http://www.maquinasvirtuales.eu/cursobasicodepowershellejecuciondescripts/
4/4