Sdílet prostřednictvím


Get-ExecutionPolicy

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

Syntaxe

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 zásadami spouštění, které jsou nastavené Set-ExecutionPolicy a nastavení zásad skupiny.

Další informace naleznete 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 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í 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 provádění jednotlivých oborů. Rutina Get-ExecutionPolicy se spustí bez parametru pro zobrazení efektivních zásad provádě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.

Rutina Get-ExecutionPolicy ukazuje, že RemoteSigned je platná zásada spouštění pro aktuální relaci PowerShellu.

Skript Start-ActivityTracker.ps1 se spustí z aktuálního adresáře. Skript je blokován 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ěnily zásady provádění, Get-ExecutionPolicy zobrazí efektivní 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 spouštění pro relaci uvedené v pořadí priority. Ve výchozím nastavení Get-ExecutionPolicy získá pouze efektivní zásady spuštění.

Typ:SwitchParameter
Position:Named
Default value:False
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky: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.
  • proces. Ovlivňuje pouze aktuální relaci PowerShellu.
  • CurrentUser. Ovlivňuje pouze aktuálního uživatele.
  • LocalMachine. Výchozí obor, který má vliv na všechny uživatele počítače.
Typ:ExecutionPolicyScope
Přípustné hodnoty:CurrentUser, LocalMachine, MachinePolicy, Process, UserPolicy
Position:0
Default value:Effective execution policy
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

Vstupy

None

Get-ExecutionPolicy nepřijme vstup z kanálu.

Výstupy

ExecutionPolicy

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é.