Get-AuthenticodeSignature
Obtém informações sobre a assinatura Authenticode para um arquivo.
Sintaxe
Get-AuthenticodeSignature
[-FilePath] <String[]>
[<CommonParameters>]
Get-AuthenticodeSignature
-LiteralPath <String[]>
[<CommonParameters>]
Get-AuthenticodeSignature
-SourcePathOrExtension <String[]>
-Content <Byte[]>
[<CommonParameters>]
Description
Este cmdlet só está disponível na plataforma Windows.
O cmdlet Get-AuthenticodeSignature
obtém informações sobre a assinatura Authenticode para um arquivo ou conteúdo de arquivo como uma matriz de bytes. Se o arquivo for assinado incorporado e o catálogo do Windows assinado, a assinatura do catálogo do Windows será usada. Se o arquivo não estiver assinado, as informações serão recuperadas, mas os campos estarão em branco.
Exemplos
Exemplo 1: Obter a assinatura Authenticode para um arquivo
Get-AuthenticodeSignature -FilePath "C:\Test\NewScript.ps1"
Este comando obtém informações sobre a assinatura Authenticode no arquivo NewScript.ps1. Ele usa o parâmetro FilePath para especificar o arquivo.
Exemplo 2: Obter a assinatura Authenticode para vários arquivos
Get-AuthenticodeSignature test.ps1, test1.ps1, sign-file.ps1, makexml.ps1
Este comando obtém informações sobre a assinatura Authenticode para os quatro arquivos listados na linha de comando. Neste exemplo, o nome do parâmetro FilePath, que é opcional, é omitido.
Exemplo 3: Obter apenas assinaturas Authenticode válidas para vários arquivos
Get-ChildItem $PSHOME\*.* | ForEach-Object {Get-AuthenticodeSignature $_} |
Where-Object {$_.Status -eq "Valid"}
Este comando lista todos os arquivos no diretório $PSHOME
que têm uma assinatura Authenticode válida. A variável automática $PSHOME
contém o caminho para o diretório de instalação do PowerShell.
O comando usa o cmdlet Get-ChildItem
para obter os arquivos no diretório $PSHOME
. Ele usa um padrão de . excluir diretórios (embora também exclua arquivos sem um ponto no nome do arquivo).
O comando usa um operador de pipeline (|
) para enviar os arquivos em $PSHOME
para o cmdlet ForEach-Object
, onde Get-AuthenticodeSignature
é chamado para cada arquivo.
Os resultados do comando Get-AuthenticodeSignature
são enviados para um comando Where-Object
que seleciona apenas os objetos de assinatura com um status de Válido.
Exemplo 4: Obter a assinatura Authenticode para um conteúdo de arquivo especificado como matriz de bytes
$authenticodeSignatureParams = @{
Content = (Get-Content foo.ps1 -AsByteStream)
SourcePathorExtension = "ps1"
}
Get-AuthenticodeSignature @authenticodeSignatureParams
Este comando obtém informações sobre a assinatura Authenticode para o conteúdo de um arquivo. Neste exemplo, a extensão do arquivo é especificada junto com o conteúdo do arquivo.
Parâmetros
-Content
Conteúdo de um arquivo como uma matriz de bytes para a qual a assinatura Authenticode é recuperada. Este parâmetro deve ser usado com SourcePathOrExtension parâmetro. Antes do PowerShell 7.4, o conteúdo do arquivo deve estar no formato Unicode (UTF-16LE).
Tipo: | Byte[] |
Position: | Named |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-FilePath
Especifica o caminho para o arquivo a ser examinado. Curingas são permitidos, mas eles devem levar a um único arquivo. Não é necessário digitar FilePath na linha de comando quando você especifica um valor para esse parâmetro.
Tipo: | String[] |
Position: | 0 |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | True |
-LiteralPath
Especifica o caminho para o arquivo que está sendo examinado. Ao contrário FilePath, o valor do parâmetro LiteralPath é usado exatamente como é digitado. Nenhum caractere é interpretado como curinga. Se o caminho incluir um caractere de escape, coloque-o entre aspas simples. Aspas simples dizem ao PowerShell para não interpretar nenhum caractere como caracteres de escape.
Tipo: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-SourcePathOrExtension
Caminho para o arquivo ou tipo de arquivo do conteúdo para o qual a assinatura Authenticode é recuperada. Este parâmetro é usado com Content onde o conteúdo do arquivo é passado como uma matriz de bytes.
Tipo: | String[] |
Position: | Named |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
Entradas
Você pode canalizar uma cadeia de caracteres que contenha um caminho de arquivo para esse cmdlet.
Saídas
Esse cmdlet retorna um objeto de assinatura para cada assinatura obtida.
Notas
Este cmdlet só está disponível em plataformas Windows.
Para obter informações sobre assinaturas Authenticode no PowerShell, consulte about_Signing.