Get-ExecutionPolicy
Geçerli oturum için yürütme ilkelerini alır.
Syntax
Get-ExecutionPolicy
[[-Scope] <ExecutionPolicyScope>]
[-List]
[<CommonParameters>]
Description
Her kapsamın yürütme ilkelerini öncelik sırasına göre görüntülemek için kullanın Get-ExecutionPolicy -List
. PowerShell oturumunuzun etkin yürütme ilkesini görmek için parametresiz kullanın Get-ExecutionPolicy
.
Etkin yürütme ilkesi, ve grup ilkesi ayarları tarafından ayarlanan yürütme ilkeleri tarafından Set-ExecutionPolicy
belirlenir.
Daha fazla bilgi için bkz. about_Execution_Policies.
Örnekler
Örnek 1: Tüm yürütme ilkelerini alma
Bu komut, her kapsamın yürütme ilkelerini öncelik sırasına göre görüntüler.
Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine Undefined
cmdlet'i Get-ExecutionPolicy
, her kapsamın yürütme ilkesini görüntülemek için List parametresini kullanır.
Örnek 2: Yürütme ilkesi ayarlama
Bu örnekte, yerel bilgisayar için bir yürütme ilkesinin nasıl ayarlanacağı gösterilmektedir.
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine RemoteSigned
Cmdlet, Set-ExecutionPolicy
RemoteSigned ilkesini belirtmek için ExecutionPolicy parametresini kullanır. Scope parametresi varsayılan kapsam değerini (LocalMachine) belirtir. Yürütme ilkesi ayarlarını görüntülemek için List parametresiyle cmdlet'ini kullanınGet-ExecutionPolicy
.
Örnek 3: Etkin yürütme ilkesini alma
Bu örnekte, bir PowerShell oturumu için etkin yürütme ilkesinin nasıl görüntüleneceği gösterilmektedir.
PS> Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine RemoteSigned
PS> Get-ExecutionPolicy
AllSigned
cmdlet'i Get-ExecutionPolicy
, her kapsamın yürütme ilkesini görüntülemek için List parametresini kullanır. Cmdlet Get-ExecutionPolicy
, etkin yürütme ilkesini ( AllSigned) görüntülemek için parametresiz çalıştırılır.
Örnek 4: Yürütme ilkesini değiştirmeden çalıştırmak için betiğin engellemesini kaldırma
Bu örnekte , RemoteSigned yürütme ilkesinin imzalanmamış betikleri çalıştırmanızı nasıl önlediği gösterilmektedir.
En iyi yöntem, cmdlet'i kullanmadan Unblock-File
önce betiğin kodunu okumak ve güvenli olduğunu doğrulamaktır. Unblock-File
Cmdlet, betiklerin çalışabilmesi için engellemesini kaldırır, ancak yürütme ilkesini değiştirmez.
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
RemoteSigned ilkesini belirtmek için ExecutionPolicy parametresini kullanır. İlke varsayılan kapsam olan LocalMachine için ayarlanır.
cmdlet'i Get-ExecutionPolicy
, RemoteSigned'ın geçerli PowerShell oturumu için etkili yürütme ilkesi olduğunu gösterir.
Start-ActivityTracker.ps1 betiği geçerli dizinden yürütülür. Betik dijital olarak imzalanmamış olduğundan betik RemoteSigned tarafından engellendi .
Bu örnekte betiğin kodu gözden geçirilmiş ve çalıştırılması güvenli olarak doğrulanmıştır. Cmdlet, Unblock-File
betiğin engelini kaldırmak için Path parametresini kullanır.
Bunun yürütme ilkesini değiştirmediğini Unblock-File
doğrulamak için RemoteSignedGet-ExecutionPolicy
etkin yürütme ilkesini görüntüler.
Start-ActivityTracker.ps1betiği geçerli dizinden yürütülür. Cmdlet'i tarafından Unblock-File
engeli kaldırıldığı için betik çalışmaya başlar.
Parametreler
-List
Oturum için öncelik sırasına göre listelenen tüm yürütme ilkesi değerlerini alır. Varsayılan olarak, Get-ExecutionPolicy
yalnızca etkin yürütme ilkesini alır.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Scope
Yürütme ilkesinden etkilenen kapsamı belirtir.
Etkin yürütme ilkesi, öncelik sırasına göre aşağıdaki gibi belirlenir:
- MachinePolicy. Bilgisayarın tüm kullanıcıları için bir grup ilkesi tarafından ayarlanır.
- UserPolicy. Bilgisayarın geçerli kullanıcısı için bir grup ilkesi tarafından ayarlanır.
- İşlem. Yalnızca geçerli PowerShell oturumunu etkiler.
- CurrentUser. Yalnızca geçerli kullanıcıyı etkiler.
- LocalMachine. Bilgisayarın tüm kullanıcılarını etkileyen varsayılan kapsam.
Type: | ExecutionPolicyScope |
Accepted values: | CurrentUser, LocalMachine, MachinePolicy, Process, UserPolicy |
Position: | 0 |
Default value: | Effective execution policy |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Girişler
None
Nesneleri bu cmdlet'e yöneltemezsiniz.
Çıkışlar
Cmdlet her zaman Linux ve macOS platformlarında Sınırsız döndürür. Windows platformlarında geçerli yürütme ilkesini döndürür.
Notlar
Yürütme ilkesi, PowerShell güvenlik stratejisinin bir parçasıdır. Yürütme ilkeleri, PowerShell profiliniz gibi yapılandırma dosyalarını yükleyip yükleyemeyeceğinizi veya betik çalıştırıp çalıştıramayacağınızı belirler. Betiklerin çalıştırılmadan önce dijital olarak imzalanması gerekip gerekmediği.
İlişkili Bağlantılar
Geri Bildirim
Gönderin ve geri bildirimi görüntüleyin