Get-ExecutionPolicy
Mendapatkan kebijakan eksekusi untuk sesi saat ini.
Sintaks
Get-ExecutionPolicy
[[-Scope] <ExecutionPolicyScope>]
[-List]
[<CommonParameters>]
Deskripsi
Untuk menampilkan kebijakan eksekusi untuk setiap cakupan dalam urutan prioritas, gunakan Get-ExecutionPolicy -List
. Untuk melihat kebijakan eksekusi yang efektif untuk penggunaan Get-ExecutionPolicy
sesi PowerShell Anda tanpa parameter.
Kebijakan eksekusi yang efektif ditentukan oleh kebijakan eksekusi yang ditetapkan oleh Set-ExecutionPolicy
dan pengaturan Kebijakan Grup.
Untuk informasi selengkapnya, lihat about_Execution_Policies.
Contoh
Contoh 1: Dapatkan semua kebijakan eksekusi
Perintah ini menampilkan kebijakan eksekusi untuk setiap cakupan dalam urutan prioritas.
Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine Undefined
Get-ExecutionPolicy
Cmdlet menggunakan parameter Daftar untuk menampilkan kebijakan eksekusi setiap cakupan.
Contoh 2: Mengatur kebijakan eksekusi
Contoh ini menunjukkan cara mengatur kebijakan eksekusi untuk komputer lokal.
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine RemoteSigned
Set-ExecutionPolicy
Cmdlet menggunakan parameter ExecutionPolicy untuk menentukan RemoteSigned
kebijakan. Parameter Cakupan menentukan nilai cakupan default, LocalMachine
.
Untuk melihat pengaturan kebijakan eksekusi, gunakan Get-ExecutionPolicy
cmdlet dengan parameter Daftar .
Contoh 3: Dapatkan kebijakan eksekusi yang efektif
Contoh ini menunjukkan cara menampilkan kebijakan eksekusi yang efektif untuk sesi PowerShell.
PS> Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine RemoteSigned
PS> Get-ExecutionPolicy
AllSigned
Get-ExecutionPolicy
Cmdlet menggunakan parameter Daftar untuk menampilkan kebijakan eksekusi setiap cakupan. Get-ExecutionPolicy
Cmdlet dijalankan tanpa parameter untuk menampilkan kebijakan eksekusi yang efektif, AllSigned
.
Contoh 4: Buka blokir skrip untuk menjalankannya tanpa mengubah kebijakan eksekusi
Contoh ini menunjukkan bagaimana RemoteSigned
kebijakan eksekusi mencegah Anda menjalankan skrip yang tidak ditandatangani.
Praktik terbaik adalah membaca kode skrip dan memverifikasi bahwa kode tersebut aman sebelum menggunakan Unblock-File
cmdlet. Unblock-File
Cmdlet membuka blokir skrip sehingga dapat berjalan, tetapi tidak mengubah kebijakan eksekusi.
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
menggunakan parameter ExecutionPolicy untuk menentukan RemoteSigned
kebijakan. Kebijakan diatur untuk cakupan default, LocalMachine
.
Get-ExecutionPolicy
Cmdlet menunjukkan bahwa adalah kebijakan eksekusi yang RemoteSigned
efektif untuk sesi PowerShell saat ini.
Start-ActivityTracker.ps1
Skrip dijalankan dari direktori saat ini. Skrip diblokir oleh RemoteSigned
karena skrip tidak ditandatangani secara digital.
Untuk contoh ini, kode skrip ditinjau dan diverifikasi sebagai aman untuk dijalankan. Unblock-File
Cmdlet menggunakan parameter Jalur untuk membuka blokir skrip.
Untuk memverifikasi bahwa Unblock-File
tidak mengubah kebijakan eksekusi, Get-ExecutionPolicy
menampilkan kebijakan eksekusi yang efektif, RemoteSigned
.
Skrip, Start-ActivityTracker.ps1
dijalankan dari direktori saat ini. Skrip mulai berjalan karena tidak diblokir oleh Unblock-File
cmdlet.
Parameter
-List
Mendapatkan semua nilai kebijakan eksekusi untuk sesi tersebut. Secara default, Get-ExecutionPolicy
hanya mendapatkan kebijakan eksekusi yang efektif.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Scope
Menentukan cakupan yang dipengaruhi oleh kebijakan eksekusi.
Kebijakan eksekusi yang efektif ditentukan oleh urutan prioritas sebagai berikut:
MachinePolicy
. Diatur oleh Kebijakan Grup untuk semua pengguna komputer.UserPolicy
. Diatur oleh Kebijakan Grup untuk pengguna komputer saat ini.Process
. Hanya memengaruhi sesi PowerShell saat ini.LocalMachine
. Cakupan default yang memengaruhi semua pengguna komputer.CurrentUser
. Hanya memengaruhi pengguna saat ini.
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 |
Input
None
Anda tidak dapat menyalurkan objek ke cmdlet ini.
Output
Cmdlet ini mengembalikan kebijakan eksekusi saat ini.
Catatan
Kebijakan eksekusi adalah bagian dari strategi keamanan PowerShell. Kebijakan eksekusi menentukan apakah Anda dapat memuat file konfigurasi, seperti profil PowerShell Anda, atau menjalankan skrip. Dan, apakah skrip harus ditandatangani secara digital sebelum dijalankan.