PdfDigitalSignatureDetails

PdfDigitalSignatureDetails class

Contiene detalles para firmar un documento PDF con una firma digital.

public class PdfDigitalSignatureDetails

Constructores

NombreDescripción
PdfDigitalSignatureDetails()Inicializa una instancia de esta clase.
PdfDigitalSignatureDetails(CertificateHolder, string, string, DateTime)Inicializa una instancia de esta clase.

Propiedades

NombreDescripción
CertificateHolder { get; set; }Devuelve el objeto titular del certificado que contiene el certificado que se utilizó para firmar el documento.
HashAlgorithm { get; set; }Obtiene o establece el algoritmo hash.
Location { get; set; }Obtiene o establece la ubicación de la firma.
Reason { get; set; }Obtiene o establece el motivo de la firma.
SignatureDate { get; set; }Obtiene o establece la fecha de la firma.
TimestampSettings { get; set; }Obtiene o establece la configuración de la marca de tiempo de la firma digital.

Observaciones

Por el momento, la firma digital de documentos PDF solo está disponible en .NET 3.5 o superior.

Para firmar digitalmente un documento PDF cuando lo crea Aspose.Words, configure laDigitalSignatureDetails Propiedad a una válidaPdfDigitalSignatureDetails objeto y luego guardar el documento en formato PDF pasando PdfSaveOptions como parámetro en elSave método.

Aspose.Words crea una firma PKCS#7 en todo el documento PDF y utiliza el filtro “Adobe.PPKMS” y el subfiltro “adbe.pkcs7.sha1” al crear una firma digital.

Ejemplos

Muestra cómo firmar un documento PDF generado.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Writeln("Contents of signed PDF.");

CertificateHolder certificateHolder = CertificateHolder.Create(MyDir + "morzal.pfx", "aw");

// Crea un objeto "PdfSaveOptions" que podamos pasar al método "Guardar" del documento
// para modificar la forma en que ese método convierte el documento a .PDF.
PdfSaveOptions options = new PdfSaveOptions();

// Configure el objeto "DigitalSignatureDetails" del objeto "SaveOptions" para
// Firmamos digitalmente el documento a medida que lo renderizamos con el método "Guardar".
DateTime signingTime = new DateTime(2015, 7, 20);
options.DigitalSignatureDetails =
    new PdfDigitalSignatureDetails(certificateHolder, "Test Signing", "My Office", signingTime);
options.DigitalSignatureDetails.HashAlgorithm = PdfDigitalSignatureHashAlgorithm.RipeMD160;

Assert.AreEqual("Test Signing", options.DigitalSignatureDetails.Reason);
Assert.AreEqual("My Office", options.DigitalSignatureDetails.Location);
Assert.AreEqual(signingTime, options.DigitalSignatureDetails.SignatureDate.ToLocalTime());
Assert.AreEqual(certificateHolder, options.DigitalSignatureDetails.CertificateHolder);

doc.Save(ArtifactsDir + "PdfSaveOptions.PdfDigitalSignature.pdf", options);

Ver también