Bloccato con PowerShell per abilitare l’esecuzione dello script? Possiamo aiutarti.
Di solito, gli utenti non possono eseguire script semplicemente facendo doppio clic su un file. È un processo fastidioso.
Come parte dei nostri servizi di gestione dei server, assistiamo i nostri clienti con query sui criteri di script.
Oggi, discutiamo di come i nostri ingegneri di supporto lo fanno facilmente per i nostri clienti.
Un rapido sguardo a PowerShell
Windows PowerShell è un motore di automazione orientato agli oggetti e linguaggio di scripting costruito su .NET.
Inoltre, aiuta gli amministratori di sistema e power-utenti di automatizzare rapidamente le attività.
Il file.ps1 è l’estensione dello script PowerShell. Per impostazione predefinita, non possiamo eseguire uno script semplicemente facendo doppio clic su un file.
Questo di solito limita il danno accidentale che si verifichi.
Durante l’esecuzione degli script tramite PowerShell, sembra che ci siano alcune politiche che limitano l’esecuzione dello script.
Criteri di esecuzione durante l’esecuzione dello script PowerShell
Discutiamo ora alcune politiche principali. Otteniamo uno di questi output durante l’esecuzione dello script.
Restricted: questo messaggio apparirà quando eseguiremo per la prima volta uno script. Questo perché gli script non sono consentiti qui
AllSigned: qui, con questa impostazione, lo script chiederà la conferma che dobbiamo eseguire prima della sua esecuzione.
Unrestricted: Qui, non ci sono restrizioni presenti. Possiamo eseguire qualsiasi script che vogliamo.
RemoteSigned: In questo caso, possiamo eseguire gli script firmati solo da uno sviluppatore attendibile.
Come abbiamo abilitato l’esecuzione di script in Powershell?
Recentemente, uno dei nostri clienti ci ha contattato con il seguente messaggio di errore.
File C:\Common\Scripts\hello.ps1 cannot load because the execution of scripts is disabled on this system. Please see "get-help about_signing" for more details.
I nostri tecnici del supporto hanno verificato l’errore e, per risolverlo, siamo andati avanti con i passaggi seguenti:
Inizialmente, apriamo il prompt dei comandi di PowerShell con il privilegio “Amministratore”.
Quindi inseriamo i seguenti comandi.
- In primo luogo eseguiamo Get-ExecutionPolicy con il risultato come “Restricted”.
- Quindi, per renderlo illimitato, eseguiamo il comando “set-execution policy unrestricted”.
- Successivamente, ha chiesto la conferma”Vuoi cambiare la politica di esecuzione”. Per impostazione predefinita, è impostato su ” N “e dobbiamo cambiarlo in”Y”.
- Infine, eseguiamo il comando Get-ExecutionPolicy in modo da controllare le politiche modificate. Si traduce in privilegi illimitati.
Dopo aver fatto tutto questo creiamo un file nel blocco note e lo salviamo con un’estensione.ps1. Ad esempio, myscript.ps1
In PowerShell, chiamiamo lo script usando il comando & “X:\myscript.ps1”
Quindi, abbiamo abilitato l’esecuzione dello script in PowerShell.