Get-ExecutionPolicy
Získá zásady spouštění pro aktuální relaci.
Syntaxe
All
Get-ExecutionPolicy
[[-Scope] <ExecutionPolicyScope>]
[-List]
[<CommonParameters>]
Description
Chcete-li zobrazit zásady provádění pro každý obor v pořadí priorit, použijte Get-ExecutionPolicy -List. Pokud chcete zobrazit efektivní zásady spouštění pro relaci PowerShellu, použijte Get-ExecutionPolicy bez parametrů.
Efektivní zásady spouštění jsou určeny jak zásadami spouštění nastavenými prostřednictvím Set-ExecutionPolicy, tak i nastaveními zásad skupiny.
Další informace naleznete v části about_Execution_Policies.
Příklady
Příklad 1: Získání všech zásad spuštění
Tento příkaz zobrazí zásady spouštění pro každý obor v pořadí podle priority.
Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine Undefined
Cmdlet Get-ExecutionPolicy používá parametr List k zobrazení zásady provádění jednotlivých oborů.
Příklad 2: Nastavení zásad spuštění
Tento příklad ukazuje, jak nastavit zásady spouštění pro místní počítač.
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine RemoteSigned
Rutina Set-ExecutionPolicy používá parametr ExecutionPolicy k určení zásady RemoteSigned. Parametr Scope určuje výchozí hodnotu oboru LocalMachine.
Pokud chcete zobrazit nastavení zásad spouštění, použijte rutinu Get-ExecutionPolicy s parametrem List.
Příklad 3: Získání účinné zásady provádění
Tento příklad ukazuje, jak zobrazit platné zásady spouštění pro relaci PowerShell.
PS> Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine RemoteSigned
PS> Get-ExecutionPolicy
AllSigned
Cmdlet Get-ExecutionPolicy používá parametr List k zobrazení zásady provádění jednotlivých oborů. Cmdlet Get-ExecutionPolicy se spustí bez parametru pro zobrazení účinné zásady spuštění AllSigned.
Příklad 4: Odblokování spuštění skriptu beze změny zásad spuštění
Tento příklad ukazuje, jak RemoteSigned zásady spouštění brání spuštění nepodepsaných skriptů.
Osvědčeným postupem je přečíst kód skriptu a před pomocí rutiny Unblock-File odblokuje skripty, aby mohly běžet, ale nemění zásady spouštění.
PS> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
PS> Get-ExecutionPolicy
RemoteSigned
PS> .\Start-ActivityTracker.ps1
.\Start-ActivityTracker.ps1 : File .\Start-ActivityTracker.ps1 cannot be loaded.
The file .\Start-ActivityTracker.ps1 is not digitally signed.
The script will not execute on the system.
For more information, see about_Execution_Policies at https://go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
+ .\Start-ActivityTracker.ps1
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
PS> Unblock-File -Path .\Start-ActivityTracker.ps1
PS> Get-ExecutionPolicy
RemoteSigned
PS> .\Start-ActivityTracker.ps1
Task 1:
Set-ExecutionPolicy používá parametr ExecutionPolicy k určení zásady RemoteSigned. Zásada je nastavena pro výchozí obor, LocalMachine.
Cmdlet Get-ExecutionPolicy ukazuje, že RemoteSigned je efektivní zásada provádění pro aktuální relaci PowerShellu.
Skript Start-ActivityTracker.ps1 se spustí z aktuálního adresáře. Skript je blokovaný RemoteSigned, protože skript není digitálně podepsaný.
V tomto příkladu byl kód skriptu zkontrolován a ověřen jako bezpečný ke spuštění. Rutina Unblock-File používá k odblokování skriptu parametr Path.
Pokud chcete ověřit, že Unblock-File nezměnil zásady provádění, Get-ExecutionPolicy zobrazí platné zásady provádění RemoteSigned.
Skript, Start-ActivityTracker.ps1 se spustí z aktuálního adresáře. Skript se začne spouštět, protože ho odblokovala rutina Unblock-File.
Parametry
-List
Získá všechny hodnoty zásad spuštění pro relaci. Ve výchozím nastavení Get-ExecutionPolicy získá pouze efektivní zásady spuštění.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Scope
Určuje obor, který má vliv na zásady provádění.
Efektivní zásady spouštění jsou určeny pořadím priority následujícím způsobem:
-
MachinePolicy. Nastavte zásadu skupiny pro všechny uživatele počítače. -
UserPolicy. Nastaveno zásadou skupiny pro aktuálního uživatele počítače. -
Process. Ovlivňuje pouze aktuální relaci PowerShellu. -
LocalMachine. Výchozí obor, který má vliv na všechny uživatele počítače. -
CurrentUser. Ovlivňuje pouze aktuálního uživatele.
Vlastnosti parametru
| Typ: | ExecutionPolicyScope |
| Default value: | Effective execution policy |
| Přípustné hodnoty: | CurrentUser, LocalMachine, MachinePolicy, Process, UserPolicy |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | 0 |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
CommonParameters
Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.
Vstupy
None
Do tohoto cmdletu nemůžete předávat objekty.
Výstupy
ExecutionPolicy
Cmdlet vždy vrací Neomezené na platformách Linux a macOS. Na platformách Windows vrací aktuální zásady spouštění.
Poznámky
Zásady spouštění jsou součástí strategie zabezpečení PowerShellu. Zásady spouštění určují, jestli můžete načíst konfigurační soubory, například profil PowerShellu, nebo spouštět skripty. A jestli musí být skripty před spuštěním digitálně podepsané.