Tato chyba zabezpečení však může nastat, pokud je zásada spouštění prostředí PowerShell nastavena na AllSigned nebo RemoteSigned a skript není podepsán. Pokud chcete skript podepsat a tuto chybu vyřešit, zde je několik metod, které vám mohou pomoci.
Co mohu udělat, když PowerShell není digitálně podepsán?
Kontrola a změna zásad spouštění
Podívejme se na to, jak zkontrolovat zásady spouštění a jak se pomocí toho zbavit chyby. Nejprve můžete spustit rutinu Get-ExecutionPolicy, abyste získali zásady provádění. Parametr list v rutině Get-ExecutionPolicy vám sdělí zásady pro jednotlivé obory.
V tomto okamžiku je vhodnou metodou změna zásad provádění pomocí rutiny SetExecutionPolicy. Následující příkaz nastaví zásady provádění na Unrestricted: PS C:> Set-ExecutionPolicy unrestricted. Po výzvě k potvrzení změny stiskněte Y.
Změna zásad se aktualizuje v registru a zůstane takto zachována, alespoň dokud ji znovu nezměníte. Všimněte si, že Unrestricted znamená načtení naprosto všech konfiguračních souborů a spuštění všech skriptů. Pokud spustíte nepodepsaný skript stažený z internetu, budete však před jeho spuštěním požádáni o povolení.
Obejít aktuální relaci prostředí PowerShell
Jiným rychlým řešením je spuštění příkazu Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass. Tento výše uvedený jednoduchý příkaz nastaví zásady provádění tak, aby obcházely aktuální relaci prostředí PowerShell.
Ještě lepší je, že jakmile tuto relaci prostředí PowerShell ukončíte, tato nastavení se ztratí.
Odblokovat stažený soubor
Pokud je zásada provádění RemoteSigned, vyžaduje to, aby všechny skripty a konfigurační soubory stažené z internetu nebo z e-mailů byly podepsány důvěryhodným vydavatelem.