it-swarm-id.com

Apa perbedaan kebijakan eksekusi PowerShell dengan RemoteSigned dari AllSigned?

Saya masih cukup baru untuk PowerShell, dan baru-baru ini membaca ini di posting blog tentang membuat dan menggunakan skrip PowerShell.

Untuk mencegah eksekusi skrip berbahaya, PowerShell memberlakukan kebijakan eksekusi. Secara default, kebijakan eksekusi diatur ke Dibatasi, yang berarti bahwa skrip PowerShell tidak akan berjalan. Anda dapat menentukan kebijakan eksekusi saat ini dengan menggunakan cmdlet berikut:

Get-ExecutionPolicy

Kebijakan eksekusi yang dapat Anda gunakan adalah:

  • Terbatas - Skrip tidak akan berjalan.
  • RemoteSigned - Skrip yang dibuat secara lokal akan berjalan, tetapi yang diunduh dari Internet tidak akan (kecuali ditandatangani secara digital oleh penerbit tepercaya).
  • AllSigned - Skrip hanya akan berjalan jika telah ditandatangani oleh penerbit tepercaya.
  • Tidak Terbatas - Skrip akan berjalan terlepas dari mana mereka berasal dan apakah mereka ditandatangani.

Anda dapat mengatur kebijakan eksekusi PowerShell dengan menggunakan cmdlet berikut:

Set-ExecutionPolicy <policy name>

Bagi saya, notasi " kecuali jika mereka ditandatangani secara digital oleh penerbit tepercaya " dalam deskripsi Remote Signed tampaknya menyiratkan bahwa ia beroperasi sama dengan AllSigned. Apakah ada perbedaan yang saya lewatkan di suatu tempat?

28
Iszi

Jelas AllSigned mengharuskan semua modul/snapins dan skrip untuk ditandatangani kode. RemoteSigned hanya membutuhkan penandatanganan file jarak jauh. Apa itu file jarak jauh?

Jawaban kanonik ada di blog PowerShell: http://blogs.msdn.com/b/powershell/archive/2007/03/07/how-does-the-remotesigned-execution-policy-work.aspx

Tetapi intinya adalah: RemoteSigned hanya memerlukan penandatanganan kode pada modul/snapins dan skrip yang ditandai sebagai dari zona "Internet" di Zona ' Aliran data alternatif .Identifier ', kecuali jika Anda mengaktifkan "Internet Explorer Enhanced Security", dalam hal ini juga termasuk file yang ditandai "Intranet" dan jalur UNC.

16
Jaykul

Perbedaannya adalah bahwa RemoteSigned akan menjalankan skrip secara lokal yang tidak ditandatangani, sedangkan AllSigned mengharuskan semua skrip untuk ditandatangani terlepas dari asalnya.

8
Steve