Get-AuthenticodeSignature
Obtém informações sobre a assinatura authenticode para um arquivo.
Sintaxe
ByPath (Padrão)
Get-AuthenticodeSignature
[-FilePath] <String[]>
[<CommonParameters>]
ByLiteralPath
Get-AuthenticodeSignature
-LiteralPath <String[]>
[<CommonParameters>]
ByContent
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 estiver tanto com assinatura embutida quanto assinado pelo catálogo do Windows, 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 ficarão em branco.
Exemplos
Exemplo 1: Obter a assinatura Authenticode para um arquivo
Get-AuthenticodeSignature -FilePath "C:\Test\NewScript.ps1"
Esse 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
Esse 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
Exemplo 3: obter somente assinaturas válidas do Authenticode para vários arquivos
Get-ChildItem $PSHOME\*.* | ForEach-Object {Get-AuthenticodeSignature $_} |
Where-Object {$_.Status -eq "Valid"}
Esse comando lista todos os arquivos no diretório $PSHOME que têm uma assinatura válida do Authenticode. A variável $PSHOME automática 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, em que 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 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
Esse comando obtém informações sobre a assinatura Authenticode para o conteúdo de um arquivo. Neste exemplo, a extensão de 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 se recupera a assinatura Authenticode. Esse parâmetro deve ser usado junto com o parâmetro SourcePathOrExtension. Antes do PowerShell 7.4, o conteúdo do arquivo deve estar no formato Unicode (UTF-16LE).
Propriedades do parâmetro
| Tipo: | Byte[] |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
ByContent
| Cargo: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
-FilePath
Especifica o caminho para o arquivo a ser examinado. Caracteres curinga 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.
Propriedades do parâmetro
| Tipo: | String[] |
| Valor padrão: | None |
| Dá suporte a curingas: | True |
| DontShow: | False |
Conjuntos de parâmetros
ByPath
| Cargo: | 0 |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
-LiteralPath
Especifica o caminho para o arquivo que está sendo examinado. Ao contrário do parâmetro FilePath, o valor do parâmetro LiteralPath é usado exatamente como ele é digitado. Nenhum caractere é interpretado como caractere curinga. Se o caminho incluir um caractere de escape, coloque-o entre aspas simples. As aspas simples dizem ao PowerShell para não interpretar nenhum caractere como caractere de escape.
Propriedades do parâmetro
| Tipo: | String[] |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
| Aliases: | PSPath, LP |
Conjuntos de parâmetros
ByLiteralPath
| Cargo: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
-SourcePathOrExtension
Caminho para o arquivo ou tipo de arquivo do conteúdo para o qual a assinatura Authenticode é recuperada. Esse parâmetro é usado com Content em que o conteúdo do arquivo é passado como uma matriz de bytes.
Propriedades do parâmetro
| Tipo: | String[] |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
ByContent
| Cargo: | Named |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.
Entradas
String
Você pode canalizar uma cadeia de caracteres que contém um caminho de arquivo para este cmdlet.
Saídas
Signature
Esse cmdlet retorna um objeto de assinatura para cada assinatura que ele obtém.
Observações
Este cmdlet está disponível apenas em plataformas Windows.
Para obter informações sobre assinaturas do Authenticode no PowerShell, consulte about_Signing.