Evo kako najbolje iskoristiti Windows PowerShell omogućavanjem Pravila izvršavanja skripte.

iPowerShell prema zadanim postavkama omogućuje pokretanje naredbi (cmdleta) putem njegove konzole. Da biste izvršili skriptu, možete stvoriti datoteku bilježnice s kodom skripte, spremiti je s datotečnim nastavkom .ps1 i izvršiti je putem PowerShell konzole. Također možete izravno zalijepiti skriptu na konzolu za izvršenje.

Međutim, ako prvi put izvršavate skriptu putem PowerShell-a, naići ćete na pogrešku "izvršena skripta je onemogućena". Prema zadanim postavkama, izvršavanje skripte na PowerShell-u je onemogućeno kao sigurnosna mjera za sprječavanje izvođenja zlonamjernih skripti na vašem sustavu. Ovdje vam pokazujemo dva načina da omogućite politiku izvršavanja skripte na Windows PowerShell.

Kako provjeriti svoju postojeću politiku izvršenja

Možete koristiti PowerShell cmdlet da biste dobili svoju trenutnu politiku izvršavanja. Poznavanje vaše trenutne politike izvršenja je neophodno da biste znali trebate li promjenu politike ili ne.

instagram viewer

Da biste dobili trenutnu politiku izvršavanja za trenutnog korisnika:

  1. Otvorite Windows PowerShell kao administrator.
  2. Upišite sljedeću naredbu u PowerShell konzolu i pritisnite Enter:
    dobiti-politika izvršenja
  3. Budući da ste naišli na pogrešku prilikom izvršavanja skripte, vjerojatno će se prikazati povratak Ograničen kao vašu trenutnu politiku izvršenja.
  4. Ako trebate vidjeti politiku izvršavanja za sve podržane opsege:
    dobiti-politika izvršenja -popis

Morat ćete promijeniti politiku izvršavanja u RemoteSigned da biste pokrenuli lokalne skripte bez pogreške. Politiku izvršavanja možete promijeniti iz aplikacije Postavke i PowerShell-a.

Kako omogućiti PowerShell politiku izvršavanja pomoću aplikacije Postavke

Politiku izvršavanja PowerShell možete promijeniti i postaviti na RemoteSigned pomoću aplikacije Postavke. Sve što trebate učiniti je podesiti postavke PowerShell-a u odjeljku za programere kako biste promijenili politiku izvršavanja kako biste omogućili izvršavanje PowerShell skripte.

Za promjenu pravila izvršavanja pomoću postavki:

  1. Pritisnite Win + I otvoriti Settrnci.
  2. Otvori Privatnost i sigurnost karticu u lijevom oknu.
  3. Zatim kliknite na Za programere.
  4. Kliknite za proširenje PowerShell odjeljak.
  5. Prebacite prekidač na promijenite politiku izvršavanja kako biste lokalnim PowerShell skriptama omogućili izvođenje bez potpisivanja - Zahtijevaj potpisivanje za udaljene skripte.
  6. Kada završite, otvorite PowerShell, upišite get politika izvršenja, i pritisnite Unesi. Politika izvršavanja za trenutnog korisnika sada je postavljena na RemoteSigned.
  7. Ako trebate onemogućiti pravilo izvršavanja, prebacite prekidač PowerShell i postavite ga na Isključeno.

Kako dopustiti izvođenje skripti u PowerShell pomoću PowerShell

Možete koristiti a PowerShell cmdlet da biste postavili politiku izvršavanja na RemoteSigned. Sučelje naredbenog retka olakšava brzu promjenu pravila izvršavanja bez upotrebe aplikacije Postavke.

Također, aplikacija Postavke može samo omogućiti ili onemogućiti politiku izvršavanja RemoteSigned. Dok vam PowerShell također omogućuje postavljanje drugih pravila i opsega.

Za promjenu pravila izvršavanja pomoću PowerShell-a:

  1. Otvorite PowerShell kao administrator.
  2. U prozor PowerShell upišite sljedeću naredbu i pritisnite Unesi:
    set-ExecutionPolicy RemoteSigned
  3. Ako se to od vas zatraži, pritisnite A za potvrdu akcije. Ovo će postaviti RemoteSigned politika izvršenja za sve korisnike. Ako želite postaviti politiku izvršavanja za Trenutni korisnik samo, koristite parametar Opseg nakon kojeg slijedi korisničko ime.
  4. Na primjer, za postavljanje RemoteSigned politika izvršenja za Trenutni korisnikupotrijebite sljedeću naredbu:
    set-ExecutionPolicy RemoteSgined -Opseg Trenutni korisnik
  5. Zamijeniti Trenutni korisnik u gornjoj naredbi s drugim korisnicima (Opseg) prema vašem zahtjevu.

Kako ukloniti politiku izvršavanja skripti pomoću PowerShell-a

Ako želite onemogućiti izvršavanje skripte, postavite pravilo izvršavanja na Nedefiniran pomoću the Set_ExecutionPolicy cmdlet. Ovo je zadano stanje i sprječava PowerShell da izvršava bilo kakve skripte.

Da biste onemogućili izvršavanje skripte pomoću PowerShell-a:

  1. Otvorite PowerShell s povišenim dopuštenjem.
  2. Zatim upišite sljedeću naredbu i pritisnite enter da onemogućite izvršavanje skripte za sve korisnike:
    set-Politika izvršenja nedefiniran
  3. Gornja naredba postavit će zadanu (nedefiniranu) politiku izvršavanja za sve korisnike. Ako želite onemogućiti izvršavanje skripte za određeni opseg, upotrijebite sljedeću naredbu:
    set-Politika izvršenja nedefiniran -Opseg CurrentUser
  4. Gornja naredba će onemogućiti izvršavanje skripte za Trenutni korisnik.

Razumijevanje politika i opsega izvršenja

Jednostavno rečeno, PowerShell-ova politika izvršavanja je politika koja kontrolira kako PowerShell izvršava konfiguracijske datoteke i skripte. Namjera je spriječiti korisnike da slučajno pokrenu zlonamjerne skripte. Sedam politika izvršavanja PowerShell-a su Zadano, Ograničeno, Daljinski potpisano, Sve Potpisano, Neograničeno, Zaobilazno i ​​Nedefinirano.

Donja tablica ukratko objašnjava sva pravila izvršavanja PowerShell-a:

Politika izvršenja

Ovrha

Zadano

Postavlja zadanu politiku izvršavanja kao Ograničeno na Windows klijentu i RemoteSigned na Windows Serveru.

Svi Potpisani

Omogućuje izvršavanje skripti koje je potpisao izdavač.

Zaobići

Neograničeno izvršavanje skripti za veće aplikacije.

RemoteSigned

Omogućuje izvršavanje lokalno napisane skripte. Zahtijeva digitalne potpise za skripte preuzete s interneta.

Ograničen

Ne dopušta izvršavanje skripti, već samo pojedinačnih PowerShell naredbi.

Nedefiniran

Postavlja politiku izvršavanja na Ograničeno za Windows klijente i RemoteSigned za Windows Server.

Neograničen

Dopusti izvršavanje nepotpisane skripte s upozorenjem za skripte preuzete s interneta.

Opseg politike izvršenja

Možete postaviti politiku izvršavanja za određeni opseg u PowerShell-u. Pet opsega politike izvršenja su MachinePolicy, UserPolicy, Process, CurrentUser, i LocalMachine.

Donja tablica ukratko objašnjava sve domete pravila izvršenja:

Opseg politike izvršenja

Ovrha

Korisnička Pravila

Konfigurirano pravilima grupe za trenutnog korisnika.

Politika stroja

Konfigurirano pravilima grupe za sve korisnike.

TrenutniKorisnik

Konfigurirano za trenutnog korisnika i pohranjeno u potključu registra HKEY_CURRENT_MACHINE.

LocalMachine

Konfigurirano za sve korisnike i pohranjeno u potključu registra HKEY_CURRENT_MACHINE.

Postupak

Utječe na trenutnu PowerShell sesiju i automatski se briše kada se sesija zatvori.

Dodavanje ili uklanjanje pravila izvršavanja skripte PowerShell u sustavu Windows

Izvršenje skripte na PowerShell-u onemogućeno je prema zadanim postavkama za Windows klijente i postavljeno na RemoteSigned za Windows poslužitelj. Napredni korisnici, međutim, mogu promijeniti pravila izvršavanja za pokretanje lokalnih, potpisanih i nepotpisanih PowerShell skripti.

Alternativno, možete zaobići pravila izvršavanja PowerShell tako da zalijepite skriptu u PowerShell konzolu ili ECHO svoju skriptu u PowerShell standardni unos. Ovo je korisno ako želite izvršavati skripte bez mijenjanja pravila izvršavanja.