SignFile - задачаSignFile task

Подписывает указанный файл с помощью заданного сертификата.Signs the specified file using the specified certificate.

ПараметрыParameters

В следующей таблице приводятся параметры задачи SignFile .The following table describes the parameters of the SignFile task.

Обратите внимание, что сертификаты SHA-256 разрешены только на компьютерах с .NET 4.5 или более поздней версией.Note that SHA-256 certificates are allowed only on machines that have .NET 4.5 and higher.

Warning

Начиная с Visual Studio 2013 с обновлением 3, для этой задачи используется новая подпись, которая позволяет указывать версию целевой платформы для файла.Starting in Visual Studio 2013 Update 3, this task has a new signature that allows you to specify the target framework version for the file. Новую подпись рекомендуется использовать там, где это возможно, поскольку процесс MSBuild работает с хэшами SHA-256 только в том случае, если поддерживается целевая платформа .NET 4.5 или более поздней версии.You are encouraged to use the new signature wherever possible, because the MSBuild process uses SHA-256 hashes only when the target framework is .NET 4.5 or higher. Если версия целевой платформы .NET 4.0 или ниже, хэш SHA-256 использоваться не будет.If the target framework is .NET 4.0 or below, the SHA-256 hash will not be used.

ПараметрParameter ОписаниеDescription
CertificateThumbprint Обязательный параметр String .Required String parameter.

Задает сертификат, который будет использоваться для подписи.Specifies the certificate to use for signing. Этот сертификат должен находиться в личном хранилище текущего пользователя.This certificate must be in the current user's personal store.
SigningTarget Обязательный параметр ITaskItem .Required ITaskItem parameter.

Задает файлы, который будут подписаны с помощью сертификата.Specifies the files to sign with the certificate.
TimestampUrl Необязательный параметр String .Optional String parameter.

Задает URL-адрес сервера отметок времени.Specifies the URL of a time stamping server.
TargetFrameworkVersion Версия платформы .NET Framework, используемой для целевого объекта.The version of the .NET Framework that is used for the target.

ПримечанияRemarks

Помимо перечисленных выше параметров эта задача наследует параметры от класса Task.In addition to the parameters listed above, this task inherits parameters from the Task class. Список этих дополнительных параметров и их описание см. в статье Базовый класс Task.For a list of these additional parameters and their descriptions, see Task base class.

ПримерExample

В следующем примере используется задача SignFile для подписания файлов, указанных в коллекции элементов FilesToSign, с помощью сертификата, заданного свойством Certificate.The following example uses the SignFile task to sign the files specified in the FilesToSign item collection with the certificate specified by the Certificate property.

<Project xmlns="http://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)"
            TargetFrameworkVersion="v4.5" />
    </Target>
</Project>

Note

Отпечатком сертификата является хэш SHA-1 сертификата.The certificate thumbprint is the SHA-1 hash of the certificate. Дополнительные сведения см. в статье о получении хэша SHA-1 сертификата доверенного корневого ЦС.For more information, see Obtain the SHA-1 hash of a trusted root CA certificate. Если вы копируете и вставляете отпечаток из сведений о сертификате, убедитесь в отсутствии лишнего невидимого знака (3F), из-за которого SignFile не сможет обнаружить сертификат.If you copy and paste the thumbprint from the certificate details, make sure you do not include the extra (3F) invisible character, which may prevent SignFile from finding the certificate.

См. такжеSee also