Поделиться через


Задача SignFile

Подписывание указанного файла указанным сертификатом.

Параметры

В следующей таблице описаны параметры задачи SignFile.

Параметр

Описание

CertificateThumbprint

Обязательный параметр типа String.

Задает сертификат, используемый для подписания. Этот сертификат должен находиться в личном хранилище текущего пользователя.

SigningTarget

Обязательный параметр ITaskItem.

Задает файлы, подписываемые сертификатом.

TimestampUrl

Необязательный параметр типа String.

Задает URL-адрес сервера отметок времени.

Заметки

Помимо параметров, которые перечислены выше, эта задача наследует параметры от класса Task. Чтобы получить список этих доп параметров и их описаний, см. Базовый класс Task.

Пример

В следующем примере задача SignFile используется для подписания файлов, заданных коллекцией элементов FilesToSign, с использованием сертификата, заданного свойством Certificate.

<Project xmlns="https://schemas.microsoft.com/developer/msbuild/2003">

    <ItemGroup>
        <FileToSign Include="File.exe" />
    </ItemGroup>

    <PropertyGroup>
        <Certificate>Cert.cer</Certificate>
    </PropertyGroup>

    <Target Name="Sign">
        <SignFile
            CertificateThumbprint="$(CertificateThumbprint)"
            SigningTarget="@(FileToSign)" />
    </Target>

</Project>
ПримечаниеПримечание

Отпечаток сертификата — хэш SHA1 сертификата.Для получения дополнительной информации см. Obtain the SHA-1 Hash of a Trusted Root CA Certificate.

В следующем примере задача Exec используется для подписания файлов, заданных коллекцией элементов FilesToSign, с использованием сертификата, заданного свойством Certificate. Это можно использовать для подписывания файлов установщика Windows во время процесса построения.

<Project xmlns="https://schemas.microsoft.com/developer/msbuild/2003">

    <ItemGroup>
        <FileToSign Include="File.msi" />
    </ItemGroup>

    <PropertyGroup>
        <Certificate>Cert.cer</Certificate>
    </PropertyGroup>

    <Target Name="Sign">
        <Exec Command="signtool.exe sign /f CertFile /p Password "@(FileToSign)" "/>
    </Target>

</Project>

См. также

Основные понятия

Задачи MSBuild

Другие ресурсы

Справочные сведения о задачах MSBuild