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 İlkesi 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
ilkeyi belirtmek için ExecutionPolicy parametresini RemoteSigned
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'i 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 bir betiğin engellemesini kaldırma
Bu örnekte, yürütme ilkesinin RemoteSigned
imzalanmamış betikleri çalıştırmanızı nasıl önlediği gösterilmektedir.
En iyi yöntem, cmdlet'ini kullanmadan önce betiğin Unblock-File
kodunu okumak ve güvenli olduğunu doğrulamaktır. Unblock-File
Cmdlet, çalıştırılabilmeleri için betiklerin 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
ilkeyi belirtmek için ExecutionPolicy parametresini RemoteSigned
kullanır. İlke varsayılan kapsam LocalMachine
olan için ayarlanır.
cmdlet'i Get-ExecutionPolicy
, geçerli PowerShell oturumu için etkili yürütme ilkesi olduğunu RemoteSigned
gösterir.
Betik Start-ActivityTracker.ps1
geçerli dizinden yürütülür. Betik dijital olarak imzalı olmadığından betik tarafından RemoteSigned
engellenir.
Bu örnekte betiğin kodu gözden geçirildi ve çalıştırılması güvenli olarak doğrulandı. 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 etkin Get-ExecutionPolicy
yürütme ilkesini RemoteSigned
görüntüler.
Betik, Start-ActivityTracker.ps1
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 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 |
Required: | False |
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 İlkesi tarafından ayarlanır.UserPolicy
. Bilgisayarın geçerli kullanıcısı için bir Grup İlkesi tarafından ayarlanır.Process
. Yalnızca geçerli PowerShell oturumunu etkiler.LocalMachine
. Bilgisayarın tüm kullanıcılarını etkileyen varsayılan kapsam.CurrentUser
. Yalnızca geçerli kullanıcıyı etkiler.
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 |
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ırabileceğinizi belirler. Ayrıca betiklerin çalıştırılmadan önce dijital olarak imzalanması gerekip gerekmediği.
İlişkili Bağlantılar
PowerShell