Get-AuthenticodeSignature
Dosyanın Authenticode imzası hakkında bilgi alır.
Syntax
ByPath (Varsayılan)
Get-AuthenticodeSignature
[-FilePath] <String[]>
[<CommonParameters>]
ByLiteralPath
Get-AuthenticodeSignature
-LiteralPath <String[]>
[<CommonParameters>]
ByContent
Get-AuthenticodeSignature
-SourcePathOrExtension <String[]>
-Content <Byte[]>
[<CommonParameters>]
Description
Bu cmdlet yalnızca Windows platformunda kullanılabilir.
Get-AuthenticodeSignature cmdlet'i, bayt dizisi olarak bir dosya veya dosya içeriği için Authenticode imzası hakkında bilgi alır. Dosya hem eklenmiş olarak imzalı hem de Windows kataloğu imzalıysa, Windows katalog imzası kullanılır. Dosya imzalanmazsa bilgiler alınır, ancak alanlar boş olur.
Örnekler
Örnek 1: Dosyanın Authenticode imzasını alma
Get-AuthenticodeSignature -FilePath "C:\Test\NewScript.ps1"
Bu komut, NewScript.ps1 dosyasındaki Authenticode imzası hakkında bilgi alır. Dosyayı belirtmek için FilePath parametresini kullanır.
Örnek 2: Birden çok dosya için Authenticode imzasını alma
Get-AuthenticodeSignature test.ps1, test1.ps1, sign-file.ps1, makexml.ps1
Bu komut, komut satırında listelenen dört dosyanın Authenticode imzası hakkında bilgi alır. Bu örnekte, isteğe bağlı FilePath parametresinin adı atlanmıştır.
Örnek 3: Birden çok dosya için yalnızca geçerli Authenticode imzaları alma
Get-ChildItem $PSHOME\*.* |
ForEach-Object {Get-AuthenticodeSignature $_} |
Where-Object {$_.Status -eq "Valid"}
Bu komut, $PSHOME dizininde geçerli bir Authenticode imzası olan tüm dosyaları listeler.
$PSHOME otomatik değişkeni, PowerShell yükleme dizininin yolunu içerir.
komut, dosyaları Get-ChildItem dizinine almak için $PSHOME cmdlet'ini kullanır.
desenini kullanır. Dizinleri dışlamak için (dosya adında nokta olmayan dosyaları da dışlar).
Komut, | içindeki dosyaları her dosya için $PSHOME çağrılan ForEach-Object cmdlet'ine göndermek için bir işlem hattı işleci (Get-AuthenticodeSignature) kullanır.
Get-AuthenticodeSignature komutunun sonuçları, yalnızca Durumu Geçerli olan imza nesnelerini seçen bir Where-Object komutuna gönderilir.
Örnek 4: Bayt dizisi olarak belirtilen bir dosya içeriği için Authenticode imzasını alma
$authenticodeSignatureParams = @{
Content = (Get-Content foo.ps1 -AsByteStream)
SourcePathorExtension = "ps1"
}
Get-AuthenticodeSignature @authenticodeSignatureParams
Bu komut, dosyanın içeriği için Authenticode imzası hakkında bilgi alır. Bu örnekte, dosya uzantısı dosyanın içeriğiyle birlikte belirtilir.
Parametreler
-Content
Authenticode imzasının alındığı bayt dizisi olarak bir dosyanın içeriği. Bu parametre SourcePathOrExtension parametresiyle kullanılmalıdır. PowerShell 7.4'ün öncesinde, dosyanın içeriği Unicode (UTF-16LE) biçiminde olmalıdır.
Parametre özellikleri
| Tür: | Byte[] |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
ByContent
| Position: | Named |
| Zorunlu: | True |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | True |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-FilePath
İncelenmesi gereken dosyanın yolunu belirtir. Joker karakterlere izin verilir, ancak tek bir dosyaya yol açmaları gerekir. Bu parametre için bir değer belirtirken komut satırına FilePath yazmak gerekmez.
Parametre özellikleri
| Tür: | String[] |
| Default value: | None |
| Joker karakterleri destekler: | True |
| DontShow: | False |
Parametre kümeleri
ByPath
| Position: | 0 |
| Zorunlu: | True |
| İşlem hattından gelen değer: | True |
| Özellik adına göre işlem hattından gelen değer: | True |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-LiteralPath
İncelenen dosyanın yolunu belirtir. FilePathaksine, LiteralPath parametresinin değeri tam olarak yazıldığı gibi kullanılır. Hiçbir karakter joker karakter olarak yorumlanmamıştır. Yol bir kaçış karakteri içeriyorsa, tek tırnak içine alın. Tek tırnak işaretleri PowerShell'e hiçbir karakteri kaçış karakteri olarak yorumlamaması gerektiğini söyler.
Parametre özellikleri
| Tür: | String[] |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | PSPath |
Parametre kümeleri
ByLiteralPath
| Position: | Named |
| Zorunlu: | True |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | True |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-SourcePathOrExtension
Authenticode imzasının alındığı içeriğin dosya veya dosya türünün yolu. Bu parametre, dosya içeriğinin bayt dizisi olarak geçirildiği İçerik kullanılır.
Parametre özellikleri
| Tür: | String[] |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
ByContent
| Position: | Named |
| Zorunlu: | True |
| İşlem hattından gelen değer: | True |
| Özellik adına göre işlem hattından gelen değer: | True |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
CommonParameters
Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.
Girişler
String
Dosya yolu içeren bir dizeyi bu cmdlet'e aktarabilirsiniz.
Çıkışlar
Signature
Bu cmdlet, aldığı her imza için bir imza nesnesi döndürür.
Notlar
PowerShell'de Authenticode imzaları hakkında bilgi için bkz. about_Signing.