Get-AuthenticodeSignature

Ruft Informationen zur Authenticode-Signatur für eine Datei ab.

Syntax

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

Beschreibung

Dieses Cmdlet ist nur auf der Windows-Plattform verfügbar.

Das Get-AuthenticodeSignature Cmdlet ruft Informationen zur Authenticode-Signatur für eine Datei oder einen Dateiinhalt als Bytearray ab. Wenn die Datei sowohl eingebettet als auch windows-katalogsigniert ist, wird die Windows-Katalogsignatur verwendet. Wenn die Datei nicht signiert ist, werden die Informationen abgerufen, aber die Felder sind leer.

Beispiele

Beispiel 1: Abrufen der Authenticode-Signatur für eine Datei

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

Dieser Befehl ruft Informationen über die Authenticode-Signatur in der Datei NewScript.ps1 ab. Es verwendet den FilePath-Parameter , um die Datei anzugeben.

Beispiel 2: Abrufen der Authenticode-Signatur für mehrere Dateien

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

Dieser Befehl ruft Informationen zur Authenticode-Signatur für die vier Dateien ab, die in der Befehlszeile aufgeführt sind. In diesem Beispiel wird der Name des FilePath-Parameters , der optional ist, weggelassen.

Beispiel 3: Abrufen nur gültiger Authenticode-Signaturen für mehrere Dateien

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

Dieser Befehl listet alle Dateien im Verzeichnis auf, die $PSHOME über eine gültige Authenticode-Signatur verfügen. Die $PSHOME automatische Variable enthält den Pfad zum PowerShell-Installationsverzeichnis.

Der Befehl verwendet das Get-ChildItem Cmdlet, um die Dateien im $PSHOME Verzeichnis abzurufen. Es verwendet das Muster von . zum Ausschließen von Verzeichnissen (obwohl es auch Dateien ohne einen Punkt im Dateinamen ausschließt).

Der Befehl verwendet einen Pipelineoperator (|), um die Dateien an $PSHOME das ForEach-Object Cmdlet zu senden, wobei Get-AuthenticodeSignature für jede Datei aufgerufen wird.

Die Ergebnisse des Get-AuthenticodeSignature Befehls werden an einen Where-Object Befehl gesendet, der nur die Signaturobjekte mit dem Status Gültig auswählt.

Beispiel 4: Abrufen der Authenticode-Signatur für einen Dateiinhalt, der als Bytearray angegeben ist

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

Dieser Befehl ruft Informationen zur Authenticode-Signatur für den Inhalt einer Datei ab. In diesem Beispiel wird die Dateierweiterung zusammen mit dem Inhalt der Datei angegeben.

Parameter

-Content

Inhalt einer Datei als Bytearray, für das die Authenticode-Signatur abgerufen wird. Dieser Parameter muss mit dem SourcePathOrExtension-Parameter verwendet werden. Der Inhalt der Datei muss im Unicode-Format (UTF-16LE) vorliegen.

Type:Byte[]
Position:Named
Default value:None
Accept pipeline input:True
Accept wildcard characters:False

-FilePath

Gibt den Pfad zur zu untersuchenden Datei an. Platzhalter sind zulässig, aber sie müssen auf eine einzige Datei verweisen. Es ist nicht erforderlich, FilePath an der Befehlszeile einzugeben, wenn Sie einen Wert für diesen Parameter angeben.

Type:String[]
Position:0
Default value:None
Accept pipeline input:True
Accept wildcard characters:True

-LiteralPath

Gibt den Pfad zur Datei an, die überprüft wird. Im Gegensatz zu FilePath wird der Wert des LiteralPath-Parameters genau wie eingegeben verwendet. Es werden keine Zeichen als Platzhalter interpretiert. Wenn der Pfad ein Escapezeichen enthält, schließen Sie es in einfache Anführungszeichen ein. Einfache Anführungszeichen weisen PowerShell an, keine Zeichen als Escapezeichen zu interpretieren.

Type:String[]
Aliases:PSPath
Position:Named
Default value:None
Accept pipeline input:True
Accept wildcard characters:False

-SourcePathOrExtension

Pfad zum Datei- oder Dateityp des Inhalts, für den die Authenticode-Signatur abgerufen wird. Dieser Parameter wird mit Content verwendet, wobei Dateiinhalte als Bytearray übergeben werden.

Type:String[]
Position:Named
Default value:None
Accept pipeline input:True
Accept wildcard characters:False

Eingaben

String

Sie können eine Zeichenfolge, die einen Dateipfad enthält, an dieses Cmdlet übergeben.

Ausgaben

Signature

Dieses Cmdlet gibt ein Signaturobjekt für jede Signatur zurück, die es abruft.

Hinweise

Dieses Cmdlet ist nur auf Windows-Plattformen verfügbar.

Informationen zu Authenticode-Signaturen in PowerShell finden Sie unter about_Signing.