Get-ExecutionPolicy
Ruft die Ausführungsrichtlinien für die aktuelle Sitzung ab.
Syntax
All
Get-ExecutionPolicy
[[-Scope] <ExecutionPolicyScope>]
[-List]
[<CommonParameters>]
Beschreibung
Verwenden Sie Get-ExecutionPolicy -List, um die Ausführungsrichtlinien für jeden Bereich in der Reihenfolge der Rangfolge anzuzeigen. Um die effektive Ausführungsrichtlinie für Ihre PowerShell-Sitzung anzuzeigen, verwenden Sie Get-ExecutionPolicy ohne Parameter.
Die effektive Ausführungsrichtlinie wird durch Ausführungsrichtlinien bestimmt, die durch Set-ExecutionPolicy- und Gruppenrichtlinieneinstellungen festgelegt werden.
Weitere Informationen finden Sie unter Informationen zu Ausführungsrichtlinien.
Beispiele
Beispiel 1: Abrufen aller Ausführungsrichtlinien
Dieser Befehl zeigt die Ausführungsrichtlinien für jeden Bereich in der Reihenfolge der Priorität an.
Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine Undefined
Das Cmdlet Get-ExecutionPolicy verwendet den Parameter List, um die Ausführungsrichtlinie jedes Bereichs anzuzeigen.
Beispiel 2: Festlegen einer Ausführungsrichtlinie
In diesem Beispiel wird gezeigt, wie Sie eine Ausführungsrichtlinie für den lokalen Computer festlegen.
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine RemoteSigned
Das cmdlet Set-ExecutionPolicy verwendet den Parameter ExecutionPolicy, um die richtlinie RemoteSigned- anzugeben. Der parameter Scope gibt den Standardwert LocalMachinean. Verwenden Sie zum Anzeigen der Ausführungsrichtlinieneinstellungen das Cmdlet Get-ExecutionPolicy mit dem Parameter List.
Beispiel 3: Abrufen der effektiven Ausführungsrichtlinie
In diesem Beispiel wird gezeigt, wie die effektive Ausführungsrichtlinie für eine PowerShell-Sitzung angezeigt wird.
PS> Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine RemoteSigned
PS> Get-ExecutionPolicy
AllSigned
Das Cmdlet Get-ExecutionPolicy verwendet den Parameter List, um die Ausführungsrichtlinie jedes Bereichs anzuzeigen. Das cmdlet Get-ExecutionPolicy wird ohne Parameter ausgeführt, um die effektive Ausführungsrichtlinie anzuzeigen, AllSigned.
Beispiel 4: Aufheben der Blockierung eines Skripts, um es auszuführen, ohne die Ausführungsrichtlinie zu ändern
In diesem Beispiel wird gezeigt, wie die RemoteSigned-Ausführungsrichtlinie verhindert, dass Sie nicht signierte Skripts ausführen.
Es empfiehlt sich, den Code des Skripts zu lesen und zu überprüfen, ob er sicher ist, bevor Sie das Unblock-File-Cmdlet verwenden. Das Unblock-File Cmdlet entsperrt Skripts, sodass sie ausgeführt werden können, aber die Ausführungsrichtlinie nicht ändert.
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:
Der Set-ExecutionPolicy verwendet den Parameter ExecutionPolicy, um die richtlinie RemoteSigned- anzugeben. Die Richtlinie wird für den Standardbereich LocalMachine-festgelegt.
Das cmdlet Get-ExecutionPolicy zeigt, dass RemoteSigned- die effektive Ausführungsrichtlinie für die aktuelle PowerShell-Sitzung ist.
Das skript Start-ActivityTracker.ps1 wird aus dem aktuellen Verzeichnis ausgeführt. Das Skript wird durch RemoteSigned blockiert, da das Skript nicht digital signiert ist.
In diesem Beispiel wurde der Code des Skripts überprüft und als sicher zum Ausführen verifiziert. Das cmdlet Unblock-File verwendet den parameter Path, um die Blockierung des Skripts aufzuheben.
Um zu überprüfen, ob Unblock-File die Ausführungsrichtlinie nicht geändert hat, zeigt Get-ExecutionPolicy die effektive Ausführungsrichtlinie RemoteSigned-an.
Das Skript, Start-ActivityTracker.ps1 wird aus dem aktuellen Verzeichnis ausgeführt. Das Skript beginnt mit der Ausführung, da es vom Cmdlet Unblock-File entsperrt wurde.
Parameter
-List
Ruft alle Ausführungsrichtlinienwerte für die Sitzung ab, die in der Rangfolge aufgeführt ist. Standardmäßig erhält Get-ExecutionPolicy nur die effektive Ausführungsrichtlinie.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | False |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-Scope
Gibt den Bereich an, der von einer Ausführungsrichtlinie betroffen ist.
Die effektive Ausführungsrichtlinie wird durch die Reihenfolge der Priorität bestimmt:
- MachinePolicy. Festgelegt durch eine Gruppenrichtlinie für alle Benutzer des Computers.
- UserPolicy. Festgelegt durch eine Gruppenrichtlinie für den aktuellen Benutzer des Computers.
- Prozess. Betrifft nur die aktuelle PowerShell-Sitzung.
- CurrentUser-. Betrifft nur den aktuellen Benutzer.
- LocalMachine. Standardbereich, der sich auf alle Benutzer des Computers auswirkt.
Parametereigenschaften
| Typ: | ExecutionPolicyScope |
| Standardwert: | Effective execution policy |
| Zulässige Werte: | CurrentUser, LocalMachine, MachinePolicy, Process, UserPolicy |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | 0 |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
CommonParameters
Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.
Eingaben
None
Get-ExecutionPolicy akzeptiert keine Eingaben aus der Pipeline.
Ausgaben
ExecutionPolicy
Hinweise
Eine Ausführungsrichtlinie ist Teil der PowerShell-Sicherheitsstrategie. Ausführungsrichtlinien bestimmen, ob Sie Konfigurationsdateien wie Ihr PowerShell-Profil laden oder Skripts ausführen können. Und ob Skripts digital signiert werden müssen, bevor sie ausgeführt werden.