Partager via


Get-AuthenticodeSignature

Obtient des informations sur la signature Authenticode pour un fichier.

Syntaxe

ByPath (Par défaut)

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

ByLiteralPath

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

ByContent

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

Description

Cette applet de commande est disponible uniquement sur la plateforme Windows.

L’applet de commande Get-AuthenticodeSignature obtient des informations sur la signature Authenticode d’un fichier ou d’un contenu de fichier sous forme de tableau d’octets. Si le fichier possède à la fois une signature incorporée et dans le catalogue Windows, c'est la signature du catalogue Windows qui est utilisée. Si le fichier n’est pas signé, les informations sont récupérées, mais les champs sont vides.

Exemples

Exemple 1 : Obtenir la signature Authenticode pour un fichier

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

Cette commande obtient des informations sur la signature Authenticode dans le fichier NewScript.ps1. Il utilise le paramètre FilePath pour spécifier le fichier.

Exemple 2 : Obtenir la signature Authenticode pour plusieurs fichiers

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

Cette commande obtient des informations sur la signature Authenticode pour les quatre fichiers répertoriés sur la ligne de commande. Dans cet exemple, le nom du paramètre FilePath, facultatif, est omis.

Exemple 3 : Obtenir uniquement des signatures Authenticode valides pour plusieurs fichiers

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

Cette commande répertorie tous les fichiers du répertoire $PSHOME qui ont une signature Authenticode valide. La variable automatique $PSHOME contient le chemin d’accès au répertoire d’installation de PowerShell.

La commande utilise l’applet de commande Get-ChildItem pour obtenir les fichiers dans le répertoire $PSHOME. Il utilise un modèle de . pour exclure les répertoires (bien qu’il exclut également les fichiers sans point dans le nom de fichier).

La commande utilise un opérateur de pipeline (|) pour envoyer les fichiers dans $PSHOME à l’applet de commande ForEach-Object, où Get-AuthenticodeSignature est appelé pour chaque fichier.

Les résultats de la commande Get-AuthenticodeSignature sont envoyés à une commande Where-Object qui sélectionne uniquement les objets de signature avec l’état Valide.

Exemple 4 : Obtenir la signature Authenticode pour un contenu de fichier spécifié en tant que tableau d’octets

$authenticodeSignatureParams = @{
    Content = (Get-Content foo.ps1 -AsByteStream)
    SourcePathorExtension = "ps1"
}
Get-AuthenticodeSignature @authenticodeSignatureParams

Cette commande obtient des informations sur la signature Authenticode pour le contenu d’un fichier. Dans cet exemple, l’extension de fichier est spécifiée avec le contenu du fichier.

Paramètres

-Content

Contenu d’un fichier sous forme de tableau d’octets pour lequel la signature Authenticode est récupérée. Ce paramètre doit être utilisé avec SourcePathOrExtension. Avant PowerShell 7.4, le contenu du fichier doit être au format Unicode (UTF-16LE).

Propriétés du paramètre

Type:

Byte[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ByContent
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-FilePath

Spécifie le chemin d’accès au fichier à examiner. Les caractères génériques sont autorisés, mais ils doivent conduire à un seul fichier. Il n’est pas nécessaire de taper FilePath à la ligne de commande lorsque vous spécifiez une valeur pour ce paramètre.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:True
DontShow:False

Jeux de paramètres

ByPath
Position:0
Obligatoire:True
Valeur du pipeline:True
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-LiteralPath

Spécifie le chemin d’accès au fichier en cours d’examen. Contrairement à FilePath, la valeur du paramètre LiteralPath est utilisée exactement comme il est typé. Aucun caractère n’est interprété en tant que caractère générique. Si le chemin inclut un caractère d’échappement, placez-le entre guillemets simples. Les guillemets simples indiquent à PowerShell de ne pas interpréter de caractères comme des caractères d’échappement.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:PSPath, DP

Jeux de paramètres

ByLiteralPath
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-SourcePathOrExtension

Chemin d’accès au fichier ou au type de fichier du contenu pour lequel la signature Authenticode est récupérée. Ce paramètre est utilisé avec Contenu où le contenu du fichier est passé en tant que tableau d’octets.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ByContent
Position:Named
Obligatoire:True
Valeur du pipeline:True
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

CommonParameters

Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.

Entrées

String

Vous pouvez transmettre une chaîne qui contient un chemin d’accès de fichier à ce cmdlet.

Sorties

Signature

Cette applet de commande retourne un objet de signature pour chaque signature qu’elle obtient.

Notes

Cette applet de commande est disponible uniquement sur les plateformes Windows.

Pour plus d’informations sur les signatures Authenticode dans PowerShell, consultez about_Signing.