Come aggiungere la firma in Word usando C#

Questo tutorial rapido guida come aggiungere la firma in Word usando C# condividendo i dettagli di configurazione, i passaggi dettagliati e un codice di esempio eseguibile che usa il documento Word di origine, un archivio PKCS12 e la relativa password. È possibile impostare una serie di proprietà prima di firmare il documento che è visibile agli utenti come riferimento. Una volta inserita la firma elettronica in Word utilizzando C#, è possibile salvarla in qualsiasi formato supportato come DOCX, DOC, ecc.

Passaggi per aggiungere la firma in Word usando C#

  1. Configura l’ambiente di sviluppo per aggiungere Aspose.Words utilizzando il gestore di pacchetti NuGet per firmare i documenti
  2. Carica il certificato PFX utilizzando la classe CertificateHolder fornendo il percorso del file e la password
  3. Imposta i commenti e l’ora della firma utilizzando l’oggetto SignOptions
  4. Carica il file Word di origine utilizzando FileStream
  5. Firma il documento caricato utilizzando il metodo Sign nella classe DigitalSignatureUtil
  6. Carica il documento firmato e verifica le informazioni sulla firma

Questi passaggi descrivono il processo per aggiungere firma digitale in Word usando C# condividendo tutte le classi e i metodi richiesti. È necessario caricare il certificato insieme alla password e quindi impostare alcune proprietà come i commenti dell’autorità di firma, la data e l’ora della firma, l’immagine della riga della firma e l’ID del provider. Infine firmiamo il documento utilizzando la classe DigitalSignatureUtil e salviamo il documento su disco tuttavia, l’ultimo passaggio è facoltativo in cui abbiamo dimostrato la verifica della firma caricando nuovamente il documento firmato e visualizzandone le informazioni.

Codice per firmare documenti Word utilizzando C#

using System;
using System.IO;
using Aspose.Words.DigitalSignatures;
namespace AsposeWords
{
class Program
{
static void Main(string[] args) // Main function to add signature in Word using C#
{
//Initialize a license
Aspose.Words.License lic = new Aspose.Words.License();
lic.SetLicense(@"Aspose.Total.lic");
// Create a certificate
CertificateHolder certificate = CertificateHolder.Create("certificate.pfx", "mypass");
// Set options
SignOptions options = new SignOptions { Comments = "Signing Authority Comments", SignTime = new DateTime(2022,6,5,13,30,0) };
// Add Signature
using (Stream inputStream = new FileStream("InputDocx.docx", FileMode.Open))
{
using (Stream outputStream = new FileStream("SignedOutput.docx", FileMode.OpenOrCreate))
{
DigitalSignatureUtil.Sign(inputStream, outputStream, certificate, options);
}
}
// Load and display signature information
using (Stream stream = new FileStream("SignedOutput.docx", FileMode.Open))
{
DigitalSignature sign = DigitalSignatureUtil.LoadSignatures(stream)[0];
Console.WriteLine($@"IsValid={sign.IsValid}, Comments:{sign.Comments},IssuerName:{sign.IssuerName}");
}
System.Console.WriteLine("Done");
}
}
}

Questo codice illustra come inserire la firma in Word usando C# usando la classe DigitalSignatureUtil. Supporta molte altre funzionalità, nonché la rimozione di tutte le firme da un file di Word per modificarlo. Allo stesso modo, la classe DigitalSignature utilizzata per ottenere il riferimento della firma nel documento caricato contiene una serie di proprietà come l’ora della firma, i commenti, il nome del soggetto e il nome dell’emittente.

Questo tutorial ci ha guidato ad aggiungere la firma a Word usando C#. Se sei interessato a creare un file Word da zero, fai riferimento all’articolo su come creare un documento Word in C#.

 Italiano