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 Cmdlet Get-AuthenticodeSignature
ruft Informationen zur Authenticode-Signatur für eine Datei oder einen Dateiinhalt als Bytearray ab. Wenn die Datei sowohl signiert als auch Windows-Katalog signiert ist, wird die Windows-Katalogsignatur verwendet. Wenn die Datei nicht signiert ist, werden die Informationen abgerufen, die Felder sind jedoch leer.
Beispiele
Beispiel 1: Abrufen der Authenticode-Signatur für eine Datei
Get-AuthenticodeSignature -FilePath "C:\Test\NewScript.ps1"
Dieser Befehl ruft Informationen zur Authenticode-Signatur in der NewScript.ps1 Datei ab. Er 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 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 $PSHOME
auf, die über eine gültige Authenticode-Signatur verfügen. Die $PSHOME
automatische Variable enthält den Pfad zum PowerShell-Installationsverzeichnis.
Der Befehl verwendet das Cmdlet Get-ChildItem
, um die Dateien im verzeichnis $PSHOME
abzurufen. Es verwendet ein Muster von ., Um Verzeichnisse auszuschließen (obwohl es auch Dateien ohne Punkt im Dateinamen ausschließt).
Der Befehl verwendet einen Pipelineoperator (|
), um die Dateien in $PSHOME
an das Cmdlet ForEach-Object
zu senden, wobei Get-AuthenticodeSignature
für jede Datei aufgerufen wird.
Die Ergebnisse des Befehls Get-AuthenticodeSignature
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 als Bytearray angegebenen Dateiinhalt
$authenticodeSignatureParams = @{
Content = (Get-Content foo.ps1 -AsByteStream)
SourcePathorExtension = "ps1"
}
Get-AuthenticodeSignature @authenticodeSignatureParams
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 SourcePathOrExtension Parameter verwendet werden. Vor PowerShell 7.4 muss der Inhalt der Datei im Unicode-Format (UTF-16LE) vorliegen.
Typ: | Byte[] |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-FilePath
Gibt den Pfad zu der zu untersuchenden Datei an. Wildcards sind zulässig, müssen jedoch zu einer einzelnen Datei führen. Es ist nicht erforderlich, FilePath- an der Befehlszeile einzugeben, wenn Sie einen Wert für diesen Parameter angeben.
Typ: | String[] |
Position: | 0 |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | True |
-LiteralPath
Gibt den Pfad zu der zu untersuchenden Datei an. Im Gegensatz zu FilePath-wird der Wert des LiteralPath--Parameters genau so verwendet, wie er eingegeben wird. Es werden keine Zeichen als Wildcards 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.
Typ: | String[] |
Aliase: | PSPath, LP |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-SourcePathOrExtension
Pfad zur Datei oder dem Dateityp des Inhalts, für den die Authenticode-Signatur abgerufen wird. Dieser Parameter wird mit Content verwendet, bei dem Dateiinhalte als Bytearray übergeben werden.
Typ: | String[] |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
Eingaben
Sie können eine Zeichenfolge weiterleiten, die einen Dateipfad zu diesem Cmdlet enthält.
Ausgaben
Dieses Cmdlet gibt ein Signaturobjekt für jede Signatur zurück, die sie abruft.
Hinweise
Dieses Cmdlet ist nur auf Windows-Plattformen verfügbar.
Informationen zu Authenticode-Signaturen in PowerShell finden Sie unter about_Signing.