Sdílet prostřednictvím


Get-ExecutionPolicy

Získá zásady spouštění pro aktuální relaci.

Syntax

Get-ExecutionPolicy
   [[-Scope] <ExecutionPolicyScope>]
   [-List]
   [<CommonParameters>]

Description

Chcete-li zobrazit zásady provádění pro každý obor v pořadí podle priority, použijte Get-ExecutionPolicy -List. Pokud chcete zobrazit efektivní zásady spouštění pro relaci Get-ExecutionPolicy PowerShellu bez parametrů.

Efektivní zásady spouštění jsou určeny zásadami spouštění, které jsou nastaveny nastavením Set-ExecutionPolicy zásad skupiny a zásadami skupiny.

Další informace najdete v tématu 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

Rutina Get-ExecutionPolicy používá parametr List k zobrazení zásad spouště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í RemoteSigned zásady. 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í efektivních zásad spouštění

Tento příklad ukazuje, jak zobrazit efektivní zásady spouštění pro relaci PowerShellu.

PS> Get-ExecutionPolicy -List

        Scope ExecutionPolicy
        ----- ---------------
MachinePolicy       Undefined
   UserPolicy       Undefined
      Process       Undefined
  CurrentUser       AllSigned
 LocalMachine    RemoteSigned

PS> Get-ExecutionPolicy

AllSigned

Rutina Get-ExecutionPolicy používá parametr List k zobrazení zásad spouštění jednotlivých oborů. Rutina Get-ExecutionPolicy se spustí bez parametru pro zobrazení efektivních zásad AllSignedspuštění.

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 použitím rutiny ověřit, jestli je bezpečný.Unblock-File 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:

Použije Set-ExecutionPolicy parametr ExecutionPolicy k určení RemoteSigned zásady. Zásada je nastavena pro výchozí obor, LocalMachine.

Rutina Get-ExecutionPolicy ukazuje, že RemoteSigned jde o efektivní zásady spouště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 zásady provádění nezměnily, Get-ExecutionPolicy zobrazí se platné zásady RemoteSignedspuštění .

Skript Start-ActivityTracker.ps1 se spustí z aktuálního adresáře. Skript se začne spouštět, protože ji 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í.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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. Nastavte zásadu 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.
Type:ExecutionPolicyScope
Accepted values:CurrentUser, LocalMachine, MachinePolicy, Process, UserPolicy
Position:0
Default value:Effective execution policy
Required:False
Accept pipeline input:True
Accept wildcard characters:False

Vstupy

None

Do této rutiny nemůžete roušit objekty.

Výstupy

ExecutionPolicy

Tato rutina vrátí aktuální zásady spuš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é.