Tampaknya saya tidak bisa membuat skrip saya masuk ke PowerShell. Saya memiliki sertifikat penandatanganan kode yang valid yang diinstal pada mesin saya dan menjalankan perintah berikut. Ada saran?
PS C:\Users\u00\bin> $cert = @(Get-ChildItem cert:\CurrentUser\My -codesigning)[0]
PS C:\Users\u00\bin> $cert | fl
Subject : E=operations@contoso.com, CN=contoso , OU=Operations, O=contoso,
L=Mayberry, S=Florida, C=US
Issuer : CN=contoso Intermediate CA1, DC=contoso, DC=com
Thumbprint : XXXXXXXXXXXXXXXXXXXXX
FriendlyName : contoso
NotBefore : 7/20/2010 12:58:55 AM
NotAfter : 7/20/2011 12:58:55 AM
Extensions : {System.Security.Cryptography.Oid, System.Security.Cryptography.Oid, System.Security.Cryptography.Oi
ystem.Security.Cryptography.Oid...}
PS C:\Users\u00\bin> Set-AuthenticodeSignature .\testsign.ps1 -Certificate $cert
Directory: C:\Users\u00\bin
SignerCertificate Status Path
----------------- ------ ----
UnknownError testsign.ps1
PS C:\Users\u00\bin> Get-AuthenticodeSignature .\testsign.ps1
Directory: C:\Users\u00\bin
SignerCertificate Status Path
----------------- ------ ----
NotSigned testsign.ps1
powershell
Chad Miller
sumber
sumber
Jawaban:
Menemukannya. File skrip dibuat menggunakan PowerShell ISE dan tampaknya Anda tidak dapat menandatangani skrip yang dibuat di PowerShell ISE atau lebih tepatnya Anda tidak dapat menandatangani file yang disandikan Unicode Big Endian yang merupakan default untuk ISE. Ada solusi untuk mengubah pengodean default seperti yang didokumentasikan dalam tautan.
Awalnya ditambahkan ke pertanyaan oleh Chad Miller . Pindahkan pembaruannya ke jawaban sehingga pertanyaan ini tidak lagi muncul sebagai tidak dijawab.
sumber
Anda dapat menyimpan file sebagai pengkodean spesifik dari dalam Powershell ISE dengan metode .Save () dari objek ISEFile:
Jika Anda menambahkan yang berikut ini ke profil ISE Anda, Anda bisa menekan Ctrl-Shift-S untuk mendapatkan pengkodean default yang berbeda untuk skrip Anda:
Berikut ini beberapa kode kilat untuk membuat profil Anda jika tidak ada dan tambahkan menu. Jalankan kode ini dari dalam ISE atau Anda hanya akan menambahkan sampah ke profil ConsoleHost Anda di mana itu hanya akan keluar:
sumber