SignFile (Tarea)
Firma el archivo especificado utilizando el certificado especificado.
Parámetros
En la siguiente tabla se describen los parámetros de la tarea SignFile.
Parámetro |
Descripción |
---|---|
CertificateThumbprint |
Parámetro String requerido. Especifica el certificado que se va a utilizar para firmar. Este certificado debe estar en el almacén personal del usuario actual. |
SigningTarget |
Parámetro ITaskItem requerido. Especifica los archivos que se van a firmar con el certificado. |
TimestampUrl |
Parámetro String opcional. Especifica la dirección URL del servidor con una marca de tiempo. |
Comentarios
Además de los parámetros mencionados anteriormente, esta tarea hereda los parámetros de la clase Task . Para obtener una lista de estos parámetros adicionales y sus descripciones, vea Task Base (Clase).
Ejemplo
En el siguiente ejemplo se utiliza la tarea SignFile para firmar los archivos especificados en la colección del elemento FilesToSign con el certificado especificado por la propiedad 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>
Nota |
---|
La huella digital del certificado es el hash SHA1 del certificado.Para obtener más información, vea Obtener el Hash SHA-1 de un certificado de entidad emisora raíz de confianza. |
En el siguiente ejemplo se utiliza la tarea Exec para firmar los archivos especificados en la colección del elemento FilesToSign con el certificado especificado por la propiedad Certificate. Puede utilizarlo para firmar archivos de Windows Installer durante el proceso de compilación.
<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>