Slik tillater du å utføre PowerShell-skript på Windows 7
Når du laster ned et skript fra Internett og prøver å kjøre det, hvis du ikke tidligere har konfigurert PowerShell, vil det kaste en ekkel feil i rød skrift. Dette er nok til å skremme de fleste brukere av, men det er en enkel løsning.
PowerShell har en rekke utførelsesmoduser som definerer hvilken type kode det er tillatt å kjøre, dette styres av en registernøkkel som lever i HKLM-bikupaen. Det er 4 forskjellige utførelsesmoduser, de er:
- begrenset: Standard kjøringspolicy, kjører ikke bare skript, interaktive kommandoer.
- Alle signert: Kjører skript; Alle skript og konfigurasjonsfiler må være signert av en utgiver du stoler på; åpner deg for risikoen for å kjøre signerte (men skadelige) skript, etter at du har bekreftet at du stoler på utgiveren.
- Fjerntegnet: Lokale skript kjører uten signatur. Eventuelle nedlastede skript trenger en digital signatur, til og med en UNC-sti.
- Ubegrenset: Kjører skript; Alle skript og konfigurasjonsfiler som lastes ned fra kommunikasjonsprogrammer som Microsoft Outlook, Internet Explorer, Outlook Express og Windows Messenger, kjøres etter at du har bekreftet at du forstår filen som kommer fra Internett. ingen digital signatur er nødvendig åpner deg for risikoen for å kjøre usignerte, ondsinnede skript lastet ned fra disse programmene
Standard kjøringspolicy for PowerShell kalles Begrenset. I denne modusen fungerer PowerShell kun som et interaktivt skall. Den kjører ikke skript og laster bare konfigurasjonsfiler som er signert av en utgiver du stoler på. Hvis du får den ekle røde feilen, er den mest sannsynlige årsaken at du prøver å kjøre et usignert skript. Det sikreste å gjøre er å endre utførelsespolitikken til ubegrenset, kjøre skriptet og deretter endre det tilbake til begrenset.
For å endre det til ubegrenset, kjør følgende kommando fra en administrativ PowerShell:
Set-ExecutionPolicy Ubegrenset
Du vil bli spurt om du er sikker på at du vil endre utførelsesreglene, trykk på enter-knappen igjen.
Du kan nå kjøre de nedlastede skriptene dine uten problemer. Det er imidlertid en alvorlig sikkerhetsrisiko hvis du glemmer å angi utførelsesretningslinjen tilbake til begrenset modus. Du kan sikkert gjette hvordan du setter det tilbake til Begrenset, men incase du ikke:
Set-ExecutionPolicy Begrenset
Igjen vil du bli spurt om du er sikker på at du vil endre utførelsesmodus, gå videre og trykk enter.