Condividi tramite


Get-AuthenticodeSignature

Ottiene informazioni sulla firma Authenticode per un file.

Sintassi

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

Descrizione

Il Get-AuthenticodeSignature cmdlet ottiene informazioni sulla firma Authenticode per un file o contenuto di file come matrice di byte. Se il file è sia firmato con segno che con il catalogo di Windows, viene usata la firma del catalogo di Windows. Se il file non è firmato, le informazioni vengono recuperate, ma i campi sono vuoti.

Esempio

Esempio 1: Ottenere la firma Authenticode per un file

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

Questo comando ottiene informazioni sulla firma Authenticode nel file NewScript.ps1. Usa il parametro FilePath per specificare il file.

Esempio 2: Ottenere la firma Authenticode per più file

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

Questo comando ottiene informazioni sulla firma Authenticode per i quattro file elencati nella riga di comando. In questo esempio viene omesso il nome del parametro FilePath , facoltativo.

Esempio 3: Ottenere solo firme Authenticode valide per più file

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

Questo comando elenca tutti i file nella $PSHOME directory con una firma Authenticode valida. La $PSHOME variabile automatica contiene il percorso della directory di installazione di PowerShell.

Il comando usa il Get-ChildItem cmdlet per ottenere i file nella $PSHOME directory. Usa un modello di . per escludere le directory (anche se esclude anche i file senza un punto nel nome file).

Il comando usa un operatore pipeline (|) per inviare i file nel $PSHOME ForEach-Object cmdlet , dove Get-AuthenticodeSignature viene chiamato per ogni file.

I risultati del Get-AuthenticodeSignature comando vengono inviati a un Where-Object comando che seleziona solo gli oggetti firma con lo stato Valido.

Esempio 4: Ottenere la firma Authenticode per un contenuto di file specificato come matrice di byte

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

Questo comando ottiene informazioni sulla firma Authenticode per il contenuto di un file. In questo esempio, l'estensione del file viene specificata insieme al contenuto del file.

Parametri

-Content

Contenuto di un file come matrice di byte per cui viene recuperata la firma Authenticode. Questo parametro deve essere usato con il parametro SourcePathOrExtension . Il contenuto del file deve essere in formato Unicode (UTF-16LE).

Tipo:Byte[]
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-FilePath

Specifica il percorso del file da esaminare. I caratteri jolly sono consentiti, ma devono condurre a un unico file. Non è necessario digitare FilePath nella riga di comando quando si specifica un valore per questo parametro.

Tipo:String[]
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:True

-LiteralPath

Specifica il percorso del file da esaminare. A differenza di FilePath, il valore del parametro LiteralPath viene usato esattamente come viene tipizzato. Nessun carattere viene interpretato come carattere jolly. Se il percorso include un carattere di escape, racchiuderlo tra virgolette singole. Le virgolette singole indicano a PowerShell di non interpretare i caratteri come caratteri di escape.

Tipo:String[]
Alias:PSPath
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-SourcePathOrExtension

Percorso del file o del tipo di file del contenuto per il quale viene recuperata la firma Authenticode. Questo parametro viene usato con Content in cui il contenuto del file viene passato come matrice di byte.

Tipo:String[]
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

Input

String

È possibile inviare tramite pipe una stringa contenente un percorso di file a questo cmdlet.

Output

Signature

Questo cmdlet restituisce un oggetto firma per ogni firma che ottiene.

Note

Per informazioni sulle firme Authenticode in PowerShell, vedere about_Signing.