Microsoft har integreret Windows PowerShell som standardstyringskonsol i hjemmet (Windows 10) og virksomhedens (Windows Server) operativsystemer for at udføre hundredvis af opgaver på en enkel, sikker og fuldt funktionel måde.
Blandt de opgaver, vi kan udføre med Windows PowerShell, er nu udførelse af scripts, der har til opgave at automatisere rutineopgaver eller udføre en især at lette administrative handlinger, og selvom dette er noget virkelig nyttigt, kan det medføre visse risici, siden et script med ondsindet indhold kan påvirke forskellige systemkomponenter såsom dets registre eller tjenester, hvilket kan have en negativ indvirkning på dets ydeevne og drift.
Af denne grund tilbyder Microsoft forskellige muligheder, som vi som brugere kan vælge til udførelse af scripts, fra at aktivere dem alle uanset deres kilde (intet anbefales) til at begrænse dem alle overhovedet.
1. Se Windows PowerShell -udførelsespolitikker
Microsoft giver os en række Windows PowerShell -eksekveringsdirektiver i alt, der vedrører scripts, hvilket er.
BegrænsetDet er standardreglen og med det er udførelse af individuelle kommandoer tilladt, men ingen scripts vil blive udført, ud over dette forhindrer det udførelse af alle scriptfiler, herunder konfigurations- og formatfiler (.ps1xml), modulet scriptfiler (.psm1) og Windows PowerShell -profiler (.ps1).
Allsigneret (kun signaturer)Med denne type direktiver kan scripts eksekveres, for dette er det påkrævet, at alle scripts og konfigurationsfiler er underskrevet af en betroet udgiver, herunder scripts, der er skrevet på den lokale computer, der anmodes om yderligere bekræftelse, før scripts udføres af Uklassificerede udgivere som er eller ikke har tillid til.
FjernbetegnetDette direktiv tillader udførelse af scripts, til dette kræver det en digital signatur fra en betroet udgiver i scripts og konfigurationsfiler, der downloades fra Internettet (herunder e -mail og chatprogrammer), det kræver ikke digitale signaturer i scripts, der har er blevet skrevet på den lokale computer, det vil sige, at de ikke er blevet downloadet fra Internettet, og du kan køre scripts, der er downloadet fra Internettet og ikke er signeret, hvis de er låst op, f.eks. ved at bruge Unblock-File cmdlet.
UbegrænsetDette direktiv giver os mulighed for at køre usignerede scripts, hvilket er en høj sikkerhedsrisiko, og advarer brugeren, før der udføres konfigurationsfiler og scripts, der er downloadet fra Internettet for at tilføje sikkerhed.
OmgåMed dette direktiv blokeres intet, og hverken advarsler eller sikkerhedsmeddelelser vises, dette eksekveringsdirektiv er designet til konfigurationer, hvor et Windows PowerShell -script er integreret i en større applikation eller i konfigurationer, hvor Windows PowerShell det er grundlaget for en program, der har sin egen sikkerhedsmodel.
UdefineretDenne indstilling angiver, at der ikke er angivet en udførelsespolitik i det aktuelle omfang, så hvis udførelsespolitikken i alle områder er Udefineret, vil autorun -politikken være Begrænset, som er standardudførelsespolitikken i Windows 10.
For at se alle Windows PowerShell -direktiverne kan vi udføre følgende. Nu skal vi se, hvordan vi etablerer et nyt direktiv til korrekt udførelse af et script i Windows PowerShell.
Get -ExecutionPolicy -Liste
FORSTØRRE
2. Kør script med ExecutionPolicy Windows PowerShell -kommando
Trin 1
For at gøre brug af denne mulighed har vi to muligheder for at køre i Windows PowerShell som administratorer, som er:
Set -ExecutionPolicy -ExecutionPolicy RemoteSigned Set -ExecutionPolicy RemoteSigned -ForceTrin 2
Når nogen af disse linjer er blevet eksekveret, kan vi validere resultatet ved hjælp af følgende cmdlet:
Get -ExecutionPolicy -Liste
FORSTØRRE
3. Kør script i Windows PowerShell med Registreringseditor
Trin 1
Til denne metode anbefales det at oprette en sikkerhedskopi af filerne eller oprette et gendannelsespunkt i tilfælde af en form for fejl, så vil vi bruge følgende nøgler og udføre følgende:
+ R
RegeditTrin 2
I det vindue, der vises, går vi til følgende rute.
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ PowerShell \ 1 \ ShellIds \ Microsoft.PowerShellTrin 3
Der vil vi højreklikke på "Microsoft.PowerShell" og vælge indstillingen "Ny / strengværdi":
Trin 4
Denne nye værdi vil blive kaldt "ExecutionPolicy":
FORSTØRRE
Trin 5
Vi dobbeltklikker på denne værdi, og i feltet "Værdiinformation" indtaster vi "RemoteSigned":
Trin 6
Klik på Accepter, og vi vil se, at dette direktiv anvendes:
FORSTØRRE
4. Kør script i Windows PowerShell med gruppepolitik
Trin 1
Denne mulighed er tilgængelig for Pro- og Enterprise -udgaverne af Windows 10, og for at få adgang til dem bruger vi følgende nøgler og udfører følgende:
+ R
gpedit.mscTrin 2
Når du trykker på Enter, vises følgende vindue, og der vil vi gå til følgende rute:
- Opsætning af udstyr
- Administrative skabeloner
- Windows -komponenter
- Windows PowerShell
Trin 2
Der vælger og åbner vi politikken kaldet "Aktiver udførelse af scripts":
FORSTØRRE
Trin 3
I det viste vindue aktiverer vi feltet "Aktiveret", og i feltet "Udførelsesdirektiv" kan vi vælge en af følgende muligheder. Når direktivet er defineret, skal du klikke på Anvend og OK for at gemme ændringerne.
- Tillad kun signerede scripts
- Tillad lokale scripts og fjernsignerede scripts
- Tillad alle scripts
Med en hvilken som helst af disse metoder vil det være muligt at anvende scripts korrekt i Windows -miljøer.