SignFile, tâche
Signe le fichier spécifié à l'aide du certificat défini.
Paramètres
Le tableau suivant décrit les paramètres de la tâche SignFile.
Paramètre |
Description |
---|---|
CertificateThumbprint |
Paramètre String obligatoire. Spécifie le certificat à utiliser pour la signature.Ce certificat doit être dans le magasin personnel de l'utilisateur actuel. |
SigningTarget |
Paramètre ITaskItem obligatoire. Spécifie les fichiers à signer avec le certificat. |
TimestampUrl |
Paramètre String facultatif. Spécifie l'URL d'un serveur d'horodatage. |
Notes
En plus des paramètres énumérés ci-dessus, cette tâche hérite des paramètres de la classe Task.Pour obtenir la liste de ces paramètres supplémentaires et de leurs descriptions, consultez Classe de base de tâche.
Exemple
L'exemple suivant utilise la tâche SignFile pour signer les fichiers spécifiés dans la collection d'éléments FilesToSign avec le certificat spécifié par la propriété 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>
[!REMARQUE]
L'empreinte numérique du certificat est le hachage SHA1 du certificat.Pour plus d'informations, consultez Obtention du hachage d'un certificat racine approuvé émis par l'autorité de certification.
L'exemple suivant utilise la tâche Exec pour signer les fichiers spécifiés dans la collection d'éléments FilesToSign avec le certificat spécifié par la propriété Certificate.Vous pouvez utiliser cet élément pour signer des fichiers Windows Installer pendant le processus de génération.
<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>