Attività SignFile
Consente di firmare il file specificato usando il certificato specificato.
Parametri
Nella tabella che segue vengono descritti i parametri dell'attività SignFile.
Notare che i certificati SHA-256 sono consentiti solo in computer con .NET 4.5 e versioni successive.
Avviso
A partire da Visual Studio 2013 Update 3, questa attività ha una nuova firma che consente di specificare la versione del framework di destinazione per il file.L'utente è incoraggiato a usare la nuova firma, ove possibile, perché il processo di MSBuild usa gli hash SHA-256 solo quando il framework di destinazione è .NET 4.5 o versione successiva.Se il framework di destinazione è .NET 4.0 o versione precedente, l'hash SHA-256 non verrà usato.
Parametro |
Descrizione |
---|---|
CertificateThumbprint |
Parametro String obbligatorio. Specifica il certificato da usare per la firma. Questo certificato deve trovarsi nell'archivio personale dell'utente corrente. |
SigningTarget |
Parametro ITaskItem obbligatorio. Specifica i file da firmare con il certificato. |
TimestampUrl |
Parametro String facoltativo. Specifica l'URL del server di timestamp. |
TargetFrameworkVersion |
La versione di.NET Framework che viene usata per la destinazione. |
Note
Oltre ai parametri sopra elencati, quest'attività eredita i parametri dalla classe Task. Per un elenco di tali parametri con le relative descrizioni, vedere Classe di base Task.
Esempio
Nell'esempio seguente viene usata l'attività SignFile per firmare i file specificati nella raccolta di elementi FilesToSign con 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)"
TargetFrameworkVersion="v4.5" />
</Target>
</Project>
Nota
L'identificazione personale del certificato è l'hash SHA-1 del certificato.Per altre informazioni, vedere Ottenere l'hash SHA-1 di un certificato CA radice attendibile.
Nell'esempio seguente viene usata l'attività Exec per firmare i file specificati nella raccolta di elementi FilesToSign con il certificato specificato dalla proprietà Certificate. È possibile usarlo per firmare i 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)" "/>
<SignFile
CertificateThumbprint="$(CertificateThumbprint)"
SigningTarget="@(FileToSign)"
TargetFrameworkVersion="v4.0" />
</Target>
</Project>