PowerShell ima nekoliko načina izvršavanja koji definiraju koju vrstu koda dopušta pokretanje, a njome upravlja ključ registra koji živi u košnici HKLM. Postoje 4 različita načina izvršavanja, one su:
- Ograničen: Zadana pravila izvršenja, ne pokreće skripte, samo interaktivne naredbe.
- Svi potpisani: Pokreće skripte; sve skripte i konfiguracijske datoteke moraju potpisati izdavač koji vjerujete; otvara vas rizik prikazivanja potpisanih (ali zlonamjernih) skripti, nakon što potvrdite da imate povjerenja u izdavača.
- Daljinski potpisan: Lokalne skripte pokreću se bez potpisa. Svaka preuzeta skripta treba digitalni potpis, čak i UNC put.
- Neograničen: Pokreće skripte; sve skripte i konfiguracijske datoteke preuzete iz komunikacijskih aplikacija kao što su Microsoft Outlook, Internet Explorer, Outlook Express i Windows Messenger pokreću se nakon potvrde da razumijete datoteku koja potječe s Interneta; nije potreban digitalni potpis; otvara vam rizik od pokretanja nepotpisanih, zlonamjernih skripti preuzeti iz tih aplikacija
Zadana pravila izvršenja programa PowerShell zovu se Ograničeni. U ovom načinu rada, PowerShell djeluje samo kao interaktivna ljuska. Ne pokreće skripte i učitava samo konfiguracijske datoteke koje potpisuje izdavač koji vjerujete. Ako dobivate gadnu crvenu pogrešku, najvjerojatniji je uzrok da pokušavate pokrenuti nepotpisanu skriptu. Najsigurnije je napraviti izmjenu Izvršne politike na neograničeno, pokrenuti skriptu, a zatim vratite ga na ograničeno.
Da biste ga promijenili u neograničeno, pokrenite sljedeću naredbu s administratorskog sustava PowerShell:
Set-ExecutionPolicy Unrestricted
Bit ćete upitani jeste li sigurni da želite promijeniti Izvršnu politiku ponovno pritisnite tipku Enter.
Set-ExecutionPolicy Restricted
Ponovno će vas pitati jeste li sigurni da želite promijeniti način izvršavanja, idite naprijed i pritisnite Enter.