Condividi tramite


Get-AuthenticodeSignature

Ottiene informazioni sulla firma Authenticode per un file.

Sintassi

ByPath (Impostazione predefinita)

Get-AuthenticodeSignature
    [-FilePath] <String[]>
    [<CommonParameters>]

ByLiteralPath

Get-AuthenticodeSignature
    -LiteralPath <String[]>
    [<CommonParameters>]

ByContent

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

Descrizione

Il cmdlet Get-AuthenticodeSignature ottiene informazioni sulla firma Authenticode per un file o contenuto di file come matrice di byte. Se il file è sia firmato internamente che con il catalogo di Windows, viene usata la firma nel 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 directory $PSHOME con una firma Authenticode valida. La variabile automatica $PSHOME contiene il percorso della directory di installazione di PowerShell.

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

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

I risultati del comando Get-AuthenticodeSignature vengono inviati a un comando Where-Object 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).

Proprietà dei parametri

Tipo:

Byte[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

ByContent
Posizione:Named
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

-FilePath

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

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:True
DontShow:False

Set di parametri

ByPath
Posizione:0
Obbligatorio:True
Valore dalla pipeline:True
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

-LiteralPath

Specifica il percorso del file da esaminare. A differenza di FilePath, il valore del parametro LiteralPath viene usato esattamente come viene digitato. Nessun carattere viene interpretato come metacaratteri. 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.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False
Alias:PSPath

Set di parametri

ByLiteralPath
Posizione:Named
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti: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.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

ByContent
Posizione:Named
Obbligatorio:True
Valore dalla pipeline:True
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

CommonParameters

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.

Input

String

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

Output

Signature

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

Note

Per informazioni sulle firme Authenticode in PowerShell, vedere about_Signing.