Get-AuthenticodeSignature
Возвращает сведения о подписи Authenticode для файла.
Синтаксис
Get-AuthenticodeSignature
[-FilePath] <String[]>
[<CommonParameters>]
Get-AuthenticodeSignature
-LiteralPath <String[]>
[<CommonParameters>]
Get-AuthenticodeSignature
-SourcePathOrExtension <String[]>
-Content <Byte[]>
[<CommonParameters>]
Описание
Этот командлет доступен только на платформе Windows.
Командлет Get-AuthenticodeSignature
получает сведения о подписи Authenticode для файла или содержимого файла в виде массива байтов.
Если файл является внедренным и подписанным каталогом Windows, используется подпись каталога Windows.
Если файл не подписан, сведения возвращаются, но поля будут пусты.
Примеры
Пример 1. Получение подписи Authenticode для файла
Get-AuthenticodeSignature -FilePath "C:\Test\NewScript.ps1"
Эта команда возвращает сведения о подписи Authenticode в файле NewScript.ps1. Для указания файла используется параметр FilePath .
Пример 2. Получение подписи Authenticode для нескольких файлов
Get-AuthenticodeSignature test.ps1, test1.ps1, sign-file.ps1, makexml.ps1
Эта команда получает сведения о подписи Authenticode для четырех файлов, перечисленных в командной строке. В этом примере имя параметра FilePath , который является необязательным, опущено.
Пример 3. Получение только допустимых подписей Authenticode для нескольких файлов
Get-ChildItem $PSHOME\*.* | ForEach-object {Get-AuthenticodeSignature $_} | Where-Object {$_.status -eq "Valid"}
Эта команда выводит список всех файлов в каталоге $PSHOME
с допустимой подписью Authenticode. Автоматическая $PSHOME
переменная содержит путь к каталогу установки PowerShell.
Команда использует Get-ChildItem
командлет для получения файлов в каталоге $PSHOME
. Он использует шаблон . для исключения каталогов (хотя он также исключает файлы без точки в имени файла).
Команда использует оператор конвейера (|
) для отправки файлов в $PSHOME
ForEach-Object
командлет , где Get-AuthenticodeSignature
вызывается для каждого файла.
Результаты Get-AuthenticodeSignature
команды отправляются Where-Object
в команду, которая выбирает только объекты сигнатуры с состоянием Допустимо.
Пример 4. Получение подписи Authenticode для содержимого файла, указанного в виде массива байтов
Get-AuthenticodeSignature -Content (Get-Content foo.ps1 -AsByteStream) -SourcePathorExtension ps1
Эта команда получает сведения о подписи Authenticode для содержимого файла. В этом примере расширение файла указывается вместе с содержимым файла.
Параметры
-Content
Содержимое файла в виде массива байтов, для которого извлекается подпись Authenticode. Этот параметр необходимо использовать с параметром SourcePathOrExtension . Содержимое файла должно быть в формате Юникода (UTF-16LE).
Type: | Byte[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-FilePath
Указывает путь к файлу для проверки. Подстановочные знаки допускаются, но путь при этом должен указывать на один файл. При указании значения для этого параметра не требуется вводить FilePath в командной строке.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-LiteralPath
Указывает путь к анализируемому файлу. В отличие от FilePath значение параметра LiteralPath используется именно в том виде, в котором оно вводится. Никакие символы не интерпретируются как знаки подстановки. Если путь содержит escape-символ, заключите его в одинарные кавычки. Одинарные кавычки позволяют PowerShell не интерпретировать какие-либо символы как escape-символы.
Type: | String[] |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SourcePathOrExtension
Путь к файлу или типу содержимого, для которого извлекается подпись Authenticode. Этот параметр используется с контентом, в котором содержимое файла передается в виде массива байтов.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Входные данные
Вы можете передать строку, содержащую путь к файлу, в этот командлет.
Выходные данные
Этот командлет возвращает объект подписи для каждой подписи, которую он получает.
Примечания
Этот командлет доступен только на платформах Windows.
Сведения о подписях Authenticode в PowerShell см. в разделе about_Signing.