Sdílet prostřednictvím


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 ověřit, že je bezpečné . Rutina 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é.