Dela via


Get-AuthenticodeSignature

Hämtar information om Authenticode-signaturen för en fil.

Syntax

ByPath (Standard)

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

ByLiteralPath

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

ByContent

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

Description

Den här cmdleten är endast tillgänglig på Windows-plattformen.

Cmdleten Get-AuthenticodeSignature hämtar information om Authenticode-signaturen för en fil eller filinnehåll som en bytematris. Om filen är både inbäddad signerad och Windows-katalogsignerad används Windows-katalogsignaturen. Om filen inte är signerad hämtas informationen, men fälten är tomma.

Exempel

Exempel 1: Hämta Authenticode-signaturen för en fil

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

Det här kommandot hämtar information om Authenticode-signaturen i filen NewScript.ps1. Den använder parametern FilePath för att ange filen.

Exempel 2: Hämta Authenticode-signaturen för flera filer

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

Det här kommandot hämtar information om Authenticode-signaturen för de fyra filer som visas på kommandoraden. I det här exemplet utelämnas namnet på parametern FilePath, som är valfri.

Exempel 3: Hämta endast giltiga Authenticode-signaturer för flera filer

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

Det här kommandot visar alla filer i katalogen $PSHOME som har en giltig Authenticode-signatur. Den $PSHOME automatiska variabeln innehåller sökvägen till PowerShell-installationskatalogen.

Kommandot använder cmdleten Get-ChildItem för att hämta filerna i katalogen $PSHOME. Den använder ett mönster av . att undanta kataloger (även om det även exkluderar filer utan en punkt i filnamnet).

Kommandot använder en pipelineoperator (|) för att skicka filerna i $PSHOME till cmdleten ForEach-Object, där Get-AuthenticodeSignature anropas för varje fil.

Resultatet av kommandot Get-AuthenticodeSignature skickas till ett Where-Object kommando som endast väljer signaturobjekten med statusen Giltig.

Exempel 4: Hämta Authenticode-signaturen för ett filinnehåll som anges som bytematris

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

Det här kommandot hämtar information om Authenticode-signaturen för innehållet i en fil. I det här exemplet anges filnamnstillägget tillsammans med innehållet i filen.

Parametrar

-Content

Innehållet i en fil som en bytematris som Authenticode-signaturen hämtas för. Den här parametern måste användas med parametern SourcePathOrExtension. Innan PowerShell 7.4 måste innehållet i filen vara i Unicode-format (UTF-16LE).

Parameteregenskaper

Typ:

Byte[]

Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

ByContent
Position:Named
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-FilePath

Anger sökvägen till filen som ska undersökas. Jokertecken tillåts, men de måste leda till en enda fil. Du behöver inte skriva FilePath- på kommandoraden när du anger ett värde för den här parametern.

Parameteregenskaper

Typ:

String[]

Standardvärde:None
Stöder jokertecken:True
DontShow:False

Parameteruppsättningar

ByPath
Position:0
Obligatorisk:True
Värde från pipeline:True
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-LiteralPath

Anger sökvägen till filen som undersöks. Till skillnad från FilePathanvänds värdet för parametern LiteralPath precis som det skrivs. Inga tecken tolkas som wildcards. Om sökvägen innehåller ett escape-tecken omger du det inom enkla citattecken. Enkla citattecken gör att PowerShell inte tolkar några tecken som escape-tecken.

Parameteregenskaper

Typ:

String[]

Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:PSPath, SP

Parameteruppsättningar

ByLiteralPath
Position:Named
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-SourcePathOrExtension

Sökväg till filen eller filtypen för innehållet som Authenticode-signaturen hämtas för. Den här parametern används med Content där filinnehåll skickas som en bytematris.

Parameteregenskaper

Typ:

String[]

Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

ByContent
Position:Named
Obligatorisk:True
Värde från pipeline:True
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

CommonParameters

Den här cmdleten stöder vanliga parametrar: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction och -WarningVariable. Mer information finns i about_CommonParameters.

Indata

String

Du kan skicka en sträng som innehåller en filsökväg till den här cmdleten.

Utdata

Signature

Den här cmdleten returnerar ett signaturobjekt för varje signatur som den får.

Kommentarer

Den här cmdleten är endast tillgänglig på Windows-plattformar.

Information om Authenticode-signaturer i PowerShell finns i about_Signing.