Udostępnij za pośrednictwem


Get-AuthenticodeSignature

Pobiera informacje o podpisie Authenticode dla pliku.

Składnia

Get-AuthenticodeSignature
   [-FilePath] <String[]>
   [<CommonParameters>]
Get-AuthenticodeSignature
   -LiteralPath <String[]>
   [<CommonParameters>]
Get-AuthenticodeSignature
   -SourcePathOrExtension <String[]>
   -Content <Byte[]>
   [<CommonParameters>]

Opis

To polecenie cmdlet jest dostępne tylko na platformie Windows.

Polecenie Get-AuthenticodeSignature cmdlet pobiera informacje o podpisie Authenticode dla pliku lub zawartości pliku jako tablicy bajtów. Jeśli plik jest podpisany zarówno osadzony, jak i podpisany wykaz systemu Windows, używany jest podpis katalogu systemu Windows. Jeśli plik nie jest podpisany, informacje są pobierane, ale pola są puste.

Przykłady

Przykład 1. Pobieranie podpisu Authenticode dla pliku

Get-AuthenticodeSignature -FilePath "C:\Test\NewScript.ps1"

To polecenie pobiera informacje o podpisie Authenticode w pliku NewScript.ps1. Używa parametru FilePath do określenia pliku.

Przykład 2. Pobieranie podpisu Authenticode dla wielu plików

Get-AuthenticodeSignature test.ps1, test1.ps1, sign-file.ps1, makexml.ps1

To polecenie pobiera informacje o podpisie Authenticode dla czterech plików wymienionych w wierszu polecenia. W tym przykładzie pominięto nazwę parametru FilePath , który jest opcjonalny.

Przykład 3. Pobieranie tylko prawidłowych podpisów Authenticode dla wielu plików

Get-ChildItem $PSHOME\*.* | ForEach-object {Get-AuthenticodeSignature $_} | Where-Object {$_.status -eq "Valid"}

To polecenie wyświetla listę wszystkich plików w $PSHOME katalogu, które mają prawidłowy podpis Authenticode. Zmienna automatyczna $PSHOME zawiera ścieżkę do katalogu instalacyjnego programu PowerShell.

Polecenie używa Get-ChildItem polecenia cmdlet , aby pobrać pliki w $PSHOME katalogu. Używa wzorca . do wykluczania katalogów (chociaż wyklucza również pliki bez kropki w nazwie pliku).

Polecenie używa operatora potoku (|) do wysyłania plików do $PSHOME ForEach-Object polecenia cmdlet, gdzie Get-AuthenticodeSignature jest wywoływany dla każdego pliku.

Wyniki Get-AuthenticodeSignature polecenia są wysyłane do Where-Object polecenia, które wybiera tylko obiekty podpisu ze stanem Prawidłowy.

Przykład 4. Pobieranie podpisu Authenticode dla zawartości pliku określonej jako tablica bajtów

Get-AuthenticodeSignature -Content (Get-Content foo.ps1 -AsByteStream) -SourcePathorExtension ps1

To polecenie pobiera informacje o podpisie Authenticode dla zawartości pliku. W tym przykładzie rozszerzenie pliku jest określane wraz z zawartością pliku.

Parametry

-Content

Zawartość pliku jako tablicy bajtów, dla której jest pobierany podpis Authenticode. Ten parametr musi być używany z parametrem SourcePathOrExtension . Przed programem PowerShell 7.4 zawartość pliku musi być w formacie Unicode (UTF-16LE).

Typ:Byte[]
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-FilePath

Określa ścieżkę do pliku do zbadania. Dozwolone są symbole wieloznaczne, ale muszą prowadzić do pojedynczego pliku. Podczas określania wartości tego parametru nie jest konieczne wpisywanie parametru FilePath w wierszu polecenia.

Typ:String[]
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:True

-LiteralPath

Określa ścieżkę do badanego pliku. W przeciwieństwie do parametru FilePath wartość parametru LiteralPath jest używana dokładnie tak, jak jest typowana. Znaki nie są interpretowane jako symbole wieloznaczne. Jeśli ścieżka zawiera znak ucieczki, należy go ująć w pojedynczy cudzysłów. Znaki pojedynczego cudzysłowu informują program PowerShell, aby nie interpretował żadnych znaków jako znaków ucieczki.

Typ:String[]
Aliasy:PSPath
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-SourcePathOrExtension

Ścieżka do pliku lub typu pliku zawartości, dla której jest pobierany podpis Authenticode. Ten parametr jest używany z zawartością, w której zawartość pliku jest przekazywana jako tablica bajtów.

Typ:String[]
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

String

Możesz potokować ciąg zawierający ścieżkę pliku do tego polecenia cmdlet.

Dane wyjściowe

Signature

To polecenie cmdlet zwraca obiekt podpisu dla każdego odbieranego podpisu.

Uwagi

To polecenie cmdlet jest dostępne tylko na platformach windows.

Aby uzyskać informacje na temat podpisów Authenticode w programie PowerShell, zobacz about_Signing.