Štai kaip išnaudoti visas „Windows PowerShell“ galimybes įgalinus scenarijaus vykdymo strategiją.
Pagal numatytuosius nustatymus „iPowerShell“ leidžia paleisti komandas (cmdlet) per konsolę. Norėdami vykdyti scenarijų, galite sukurti užrašų knygelės failą su scenarijaus kodu, išsaugoti jį su .ps1 failo plėtiniu ir vykdyti naudodami „PowerShell“ konsolę. Taip pat galite tiesiogiai įklijuoti scenarijų į konsolę vykdyti.
Tačiau, jei pirmą kartą vykdote scenarijų naudodami „PowerShell“, susidursite su klaida „vykdomas scenarijus išjungtas“. Pagal numatytuosius nustatymus scenarijaus vykdymas PowerShell yra išjungtas kaip saugos priemonė, siekiant užkirsti kelią kenkėjiškų scenarijų paleidimui jūsų sistemoje. Čia parodome du būdus, kaip įgalinti įrašo vykdymo politiką sistemoje „Windows PowerShell“.
Kaip patikrinti esamą vykdymo politiką
Norėdami gauti dabartinę vykdymo politiką, galite naudoti „PowerShell“ cmdlet. Būtina žinoti savo dabartinę vykdymo politiką, kad žinotumėte, ar jums reikia politikos pakeitimo, ar ne.
Norėdami gauti dabartinę vykdymo politiką dabartiniam vartotojui:
- Atidarykite „Windows PowerShell“ kaip administratorių.
- Įveskite šią komandą PowerShell konsolėje ir paspauskite Enter:
gauti– vykdymo politika
- Kadangi vykdydami scenarijų susidūrėte su klaida, grąža greičiausiai bus rodoma Apribota kaip jūsų dabartinė vykdymo politika.
- Jei reikia peržiūrėti visų palaikomų sričių vykdymo politiką:
gauti-vykdymo politika -sąrašas
Turėsite pakeisti vykdymo politiką į RemoteSigned, kad vietiniai scenarijai būtų vykdomi be klaidos. Vykdymo politiką galite pakeisti nustatymų programoje ir „PowerShell“.
Kaip įjungti „PowerShell“ vykdymo politiką naudojant „Nustatymų“ programą
Galite pakeisti ir nustatyti „PowerShell“ vykdymo politiką į „RemoteSigned“ naudodami programą „Nustatymai“. Viskas, ką jums reikia padaryti, tai pakeisti „PowerShell“ nustatymus kūrėjų skiltyje, kad pakeistumėte vykdymo politiką ir įgalintumėte „PowerShell“ scenarijaus vykdymą.
Norėdami pakeisti vykdymo politiką naudodami nustatymus:
- Paspauskite Win + I atidaryti Settingus.
- Atidaryk Privatumas ir saugumas skirtuką kairėje srityje.
- Toliau spustelėkite Kūrėjams.
- Spustelėkite, kad išplėstumėte PowerShell skyrius.
- Perjunkite jungiklį į pakeisti vykdymo politiką, kad vietiniai „PowerShell“ scenarijai būtų vykdomi nepasirašant – reikalauti pasirašyti nuotolinius scenarijus.
- Baigę atidarykite PowerShell, įveskite get vykdymo politika, ir paspauskite Įeikite. Dabartinio vartotojo vykdymo politika nustatyta į Nuotoliniu būdu pasirašyta.
- Jei reikia išjungti vykdymo politiką, perjunkite PowerShell jungiklį ir nustatykite jį į Išjungta.
Kaip leisti scenarijus paleisti PowerShell naudojant PowerShell
Galite naudoti a PowerShell cmdlet kad vykdymo strategija būtų nustatyta į RemoteSigned. Komandinės eilutės sąsaja leidžia lengvai greitai pakeisti vykdymo politiką nenaudojant nustatymų programos.
Be to, nustatymų programa gali įjungti arba išjungti tik nuotolinio pasirašyto vykdymo politiką. Tuo tarpu „PowerShell“ leidžia nustatyti ir kitas strategijas bei apimtis.
Norėdami pakeisti vykdymo strategiją naudodami PowerShell:
- Atidarykite „PowerShell“ kaip administratorių.
- „PowerShell“ lange įveskite šią komandą ir paspauskite Įeikite:
Nustatyti„ExecutionPolicy“ nuotoliniu būdu pasirašyta
- Jei būsite paraginti, paspauskite A veiksmui patvirtinti. Tai nustatys Nuotoliniu būdu pasirašyta vykdymo politika visiems vartotojams. Jei norite nustatyti vykdymo politiką Dabartinis vartotojas tik naudokite parametrą Scope ir vartotojo vardą.
- Pavyzdžiui, norėdami nustatyti Nuotoliniu būdu pasirašyta vykdymo politika Dabartinis vartotojas, naudokite šią komandą:
Nustatyti„ExecutionPolicy RemoteSgined“ –Taikymo sritis Dabartinis vartotojas
- Pakeiskite Dabartinis vartotojas aukščiau pateiktoje komandoje su kitais vartotojais (Taikymo sritis) pagal jūsų reikalavimą.
Kaip pašalinti scenarijaus vykdymo politiką naudojant „PowerShell“.
Jei norite išjungti scenarijaus vykdymą, nustatykite vykdymo politiką į Neapibrėžtas naudojant the Set_ExecutionPolicy cmdlet. Tai yra numatytoji būsena ir neleidžia „PowerShell“ vykdyti jokių scenarijų.
Norėdami išjungti scenarijaus vykdymą naudojant PowerShell:
- Atidarykite „PowerShell“ su padidintu leidimu.
- Tada įveskite šią komandą ir paspauskite enter, kad išjungtumėte scenarijaus vykdymą visiems vartotojams:
Nustatyti- Vykdymo politika neapibrėžtas
- Aukščiau pateikta komanda nustatys numatytąją vykdymo politiką (neapibrėžtą) visiems vartotojams. Jei norite išjungti scenarijaus vykdymą konkrečioje srityje, naudokite šią komandą:
Nustatyti- Vykdymo politika neapibrėžtas -Apimtis CurrentUser
- Aukščiau pateikta komanda išjungs scenarijaus vykdymą Dabartinis vartotojas.
Vykdymo politikos ir taikymo srities supratimas
Paprasčiau tariant, „PowerShell“ vykdymo politika yra politika, kuri kontroliuoja, kaip „PowerShell“ vykdo konfigūracijos failus ir scenarijus. Numatytas tikslas yra neleisti vartotojams netyčia paleisti kenkėjiškų scenarijų. Septynios „PowerShell“ vykdymo strategijos yra Numatytasis, Apribotas, Nuotoliniu būdu pasirašytas, Visi pasirašyti, Neribotas, Apeinantis ir Neapibrėžtas.
Toliau pateiktoje lentelėje trumpai paaiškinamos visos „PowerShell“ vykdymo strategijos:
Vykdymo politika |
Vykdymas |
Numatytas |
Nustato numatytąją vykdymo politiką kaip Restricted on Windows Client ir RemoteSigned Windows Server. |
Viskas Pasirašyta |
Leidžia vykdyti leidėjo pasirašytus scenarijus. |
Apeiti |
Neribotas scenarijų vykdymas didesnėms programoms. |
Nuotoliniu būdu pasirašyta |
Leidžia vykdyti vietoje parašytą scenarijų. Scenarijų, atsisiųstų iš interneto, skaitmeninis parašas. |
Apribota |
Neleidžia vykdyti scenarijaus, o tik atskiras PowerShell komandas. |
Neapibrėžtas |
Nustato vykdymo politiką į Restricted for Windows klientams ir RemoteSigned for Windows Server. |
Neribojama |
Leisti vykdyti nepasirašytą scenarijų su įspėjimu apie scenarijus, atsisiųstus iš interneto. |
Vykdymo politikos taikymo sritis
„PowerShell“ galite nustatyti konkrečios apimties vykdymo strategiją. Penkios vykdymo politikos sritys yra MachinePolicy, UserPolicy, Process, CurrentUser, ir Vietinė mašina.
Toliau pateiktoje lentelėje trumpai paaiškinamos visos vykdymo politikos taikymo sritys:
Vykdymo politikos taikymo sritis |
Vykdymas |
Vartotojo politika |
Sukonfigūruota dabartinio vartotojo grupės strategija. |
Mašinos politika |
Sukonfigūruota pagal grupės politiką visiems vartotojams. |
CurrenUser |
Sukonfigūruotas dabartiniam vartotojui ir saugomas HKEY_CURRENT_MACHINE registro daliniame rakte. |
Vietinė mašina |
Sukonfigūruotas visiems vartotojams ir saugomas HKEY_CURRENT_MACHINE registro daliniame rakte. |
Procesas |
Paveikia dabartinę „PowerShell“ seansą ir automatiškai ištrinama, kai sesija uždaroma. |
Pridėti arba pašalinti „PowerShell“ scenarijaus vykdymo strategiją sistemoje „Windows“.
Scenarijaus vykdymas PowerShell yra išjungtas pagal numatytuosius nustatymus Windows klientams ir nustatytas į RemoteSigned, skirtas Windows serveriui. Tačiau patyrę vartotojai gali pakeisti vykdymo strategijas, kad paleistų vietinius, pasirašytus ir nepasirašytus PowerShell scenarijus.
Arba galite apeiti „PowerShell“ vykdymo politiką įklijuodami scenarijų į „PowerShell“ konsolę arba ECHO savo scenarijų į standartinę „PowerShell“ įvestį. Tai naudinga, jei norite vykdyti scenarijus nekeisdami vykdymo politikos.