Attività SignFile
Firma il file specificato utilizzando il certificato specificato.
Parametri
Nella tabella riportata di seguito sono descritti i parametri dell'attività SignFile.
Parametro |
Descrizione |
---|---|
CertificateThumbprint |
Parametro String obbligatorio. Specifica il certificato da utilizzare per la firma.Questo certificato deve trovarsi nell'archivio personale dell'utente corrente. |
SigningTarget |
Parametro ITaskItem obbligatorio. Specifica i file da firmare mediante il certificato. |
TimestampUrl |
Parametro String facoltativo. Specifica l'URL di un server del time stamp. |
Note
Oltre ai parametri elencati in precedenza, questa attività eredita i parametri dalla classe Task.Per un elenco di tali parametri aggiuntivi e le relative descrizioni, vedere Classe di base Task.
Esempio
Nell'esempio riportato di seguito l'attività SignFile viene utilizzata per firmare i file specificati nella raccolta di elementi FilesToSign mediante il certificato specificato dalla proprietà 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]
L'identificazione digitale del certificato è l'hash SHA1 del certificato.Per ulteriori informazioni, vedere Ottenere l'hash SHA-1 di un certificato di un'Autorità di certificazione attendibile.
Nell'esempio riportato di seguito l'attività Exec viene utilizzata per firmare i file specificati nella raccolta di elementi FilesToSign mediante il certificato specificato dalla proprietà Certificate.È possibile firmare in questo modo file di Windows Installer durante il processo di compilazione.
<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>