- Lai mainītu PowerShell izpildes politiku, atveriet PowerShell (administrators) un palaidiet komandu “Set-ExecutionPolicy RemoteSigned”, lai iestatītu izpildi skriptu atļaušanai. Komanda “Set-ExecutionPolicy AllSigned” atļauj skriptus no uzticamiem izdevējiem. Vai arī komanda “Set-ExecutionPolicy Unrestricted” atļauj skriptus bez ierobežojumiem.
- Varat arī palaist “Set-ExecutionPolicy Restricted”, lai atsauktu izmaiņas un novērstu skriptu palaišanu.
- Visbeidzot, jūs varat atļaut PowerShell skriptus, mainot politiku no lietotnes Windows 11 un 10 iestatījumi.
Operētājsistēmā Windows 11 (vai 10) pēc noklusējuma, mēģinot palaist skriptu programmā PowerShell, tas neizdodas un tiek parādīts kļūdas ziņojums “nevar ielādēt, jo skriptu palaišana šajā sistēmā ir atspējota” . Tas ir tāpēc, ka PowerShell ir drošības līdzeklis “izpildes politika”, kas kontrolē konfigurācijas failu ielādi un skriptu palaišanu, lai novērstu ļaunprātīga koda palaišanu sistēmā.
Ja skripts ir jāizpilda operētājsistēmā Windows 11 (vai 10), varat mainīt izpildes politiku lokālajam datoram, pašreizējam lietotājam vai sesijai.
Iestatot PowerShell izpildes politiku lokālajam datoram un pašreizējam lietotājam, informācija tiek saglabāta reģistrā. Ja konfigurējat politiku konkrētai sesijai, tā tiek saglabāta atmiņā un pēc sesijas aizvēršanas pazaudēta.
Saskaņā ar Microsoft sniegto informāciju, izpildes politika neierobežo darbības. Politiku var apiet, ierakstot skriptu komandrindas saskarnē (CLI). Politika ir izstrādāta, lai palīdzētu lietotājiem novērst ļaunprātīgu skriptu palaišanu.
Šajā rokasgrāmatā es iemācīšu, kā mainīt izpildes politiku, lai skripti veiksmīgi darbotos pakalpojumā PowerShell operētājsistēmā Windows 11 vai 10.
Mainiet izpildes politiku operētājsistēmā Windows 11, izmantojot PowerShell
Lai mainītu PowerShell izpildes politiku operētājsistēmā Windows 11 (vai 10), veiciet tālāk norādītās darbības.
-
Atveriet Sākt operētājsistēmā Windows 11.
-
Meklējiet PowerShell , ar peles labo pogu noklikšķiniet uz augšējā rezultāta un atlasiet opciju Palaist kā administratoram .
-
Ievadiet šo komandu, lai apstiprinātu pašreizējo izpildes politiku, un nospiediet taustiņu Enter :
Get-ExecutionPolicy
-
(Pēc izvēles) Ierakstiet šo komandu, lai skatītu spēkā esošās PowerShell izpildes politikas, un nospiediet taustiņu Enter :
Get-ExecutionPolicy -List
-
Ievadiet šo komandu, lai mainītu PowerShell izpildes politiku, kas ļauj skriptiem darboties operētājsistēmā Windows 11, un nospiediet taustiņu Enter :
Set-ExecutionPolicy RemoteSigned
-
(Pēc izvēles) Ierakstiet šo komandu, lai mainītu izpildes politiku un novērstu skriptu izpildi, un nospiediet taustiņu Enter :
Iestatīt izpildes politiku ar ierobežojumu

Kad esat pabeidzis šīs darbības, varat vēlreiz izpildīt skriptu, un tam tagad vajadzētu veiksmīgi darboties operētājsistēmā Windows 11. Ja vairs nevēlaties atļaut skriptu palaišanu datorā, varat palaist darbībās minēto papildu komandu.
Ja vēlaties mainīt izpildes politiku, lai palaistu skriptus pašreizējam lietotājam vai lokālajam datoram, jums jāizmanto opcija “Darbības joma” šādi: Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUservai Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine.
Operētājsistēmā Windows 11 varat izvēlēties no četrām dažādām izpildes politikām, lai atļautu vai noraidītu skriptus:
- Ierobežots — bloķē jebkura skripta faila palaišanu.
- RemoteSigned — ļauj datorā izveidot skriptus. Tomēr citā ierīcē izveidoti skripti nedarbosies bez uzticama paraksta.
- AllSigned — ļauj palaist visus skriptus. Tomēr tikai tad, ja uzticams izdevējs ir iekļāvis parakstu.
- Neierobežots — palaiž jebkuru skriptu bez ierobežojumiem.
Jums nav jāmaina izpildes politika, ja jums ir jāpalaiž skripts, kuram nav nepieciešamo parametru un kas neatgriež izvadi. Tā vietā varat izmantot komandu, PowerShell.exe -File "FILENAME" -ExecutionPolicy Bypasslai apietu ierobežojumus.
Mainiet izpildes politiku operētājsistēmā Windows 11 sadaļā Iestatījumi
Operētājsistēmās Windows 11 un 10 varat arī atļaut skriptu palaišanu pakalpojumā PowerShell, mainot komandu konsoles konfigurāciju lietotnē Iestatījumi.
No Windows 11
Lai mainītu PowerShell izpildes politiku no lietotnes Iestatījumi, veiciet tālāk norādītās darbības.
-
Atveriet Iestatījumus .
-
Noklikšķiniet uz Sistēma .
-
Noklikšķiniet uz lapas Izstrādātājiem .
-
Noklikšķiniet uz PowerShell iestatījuma.
-
Ieslēdziet pārslēgšanas slēdzi “Mainīt izpildes politiku, lai atļautu lokālos PowerShell skriptus […]” .

Ja šī funkcija vairs nav nepieciešama, skriptus var bloķēt, veicot tās pašas darbības, bet 5. darbībā izslēdziet slēdzi “Mainīt izpildes politiku, lai atļautu lokālos PowerShell skriptus […]” .
No Windows 10
Lai mainītu PowerShell izpildes politiku no lietotnes Iestatījumi, veiciet tālāk norādītās darbības.
-
Atveriet Iestatījumus .
-
Noklikšķiniet uz Atjaunināšana un drošība .
-
Noklikšķiniet uz lapas Izstrādātājiem .
-
PowerShell iestatījumam atzīmējiet opciju “Mainīt izpildes politiku, lai atļautu lokālos PowerShell skriptus […]” .

-
Noklikšķiniet uz pogas Lietot .
Ja šī funkcija vairs nav nepieciešama, skriptus var bloķēt, veicot tās pašas darbības, bet 4. darbībā notīriet izvēles rūtiņu “Mainīt izpildes politiku, lai atļautu lokālos PowerShell skriptus […]” un lietojiet izmaiņas.
Pēc šo darbību veikšanas iestatījums iestatīs PowerShell izpildes politiku uz “RemoteSigned”. Šī politika ļaus palaist skriptus bez parakstīšanas, bet attāliem skriptiem būs nepieciešama parakstīšana.
Mainīt izpildes politiku, lai atļautu skriptus bez digitālā paraksta
Ja jums ir PowerShell skripts, kas ir izveidots citā datorā vai lejupielādēts no interneta, mēģinot palaist skriptu, var tikt parādīts kļūdas ziņojums “Failu […].ps1 nevar ielādēt. Fails […].ps1 nav digitāli parakstīts. Šo skriptu nevar palaist pašreizējā sistēmā” vai “Skripts netiks izpildīts sistēmā” . Tomēr, ja zināt, ka skriptu ir droši lietot un esat to ieguvis no uzticama avota, varat mainīt darbības jomas politiku “Process” , lai to veiksmīgi palaistu.

Kļūda “PowerShell skripts nav digitāli parakstīts” / Attēls: Mauro Huculak
Lai mainītu PowerShell izpildes politiku, lai palaistu “.ps1” skriptu, kas nav digitāli parakstīts, veiciet tālāk norādītās darbības.
-
Atvērt Sākt .
-
Meklējiet PowerShell , ar peles labo pogu noklikšķiniet uz augšējā rezultāta un atlasiet opciju Palaist kā administratoram .
-
Ievadiet šo komandu, lai mainītu PowerShell skriptu ar digitālo parakstu atļaušanu un nospiediet taustiņu Enter :
Set-ExecutionPolicy -Scope process -ExecutionPolicy apvedceļš

Kad esat pabeidzis šīs darbības, varat palaist skripta failu, izmantojot .\Your-PowerShell-Script.ps1komandu pašreizējās sesijas laikā. Pēc PowerShell sesijas aizvēršanas izpildes politika atgriezīsies sākotnējā stāvoklī, lai novērstu citu skriptu palaišanu.
Ja jums ir jāpalaiž vēl viens skripta fails, varat atkārtot iepriekš aprakstītās darbības.
Atjauninājums 2024. gada 10. oktobrī: Šī rokasgrāmata ir atjaunināta, lai nodrošinātu precizitāti un atspoguļotu izmaiņas procesā.