Adicionar assinatura digital ou assinar PDF digitalmente em Java

Aspose.PDF for Java suporta vários fluxos de assinatura através de PdfFileSignature.

Assinar um PDF com um objeto de certificado

  1. Crie a fachada PdfFileSignature e vincule o documento PDF de origem.
  2. Crie o objeto PKCS7 de assinatura e configure as opções de assinatura.
  3. Aplique a assinatura ao documento PDF por meio de PdfFileSignature.
  4. Salve o documento PDF atualizado.
public static void signPdfWithCertificateObject(Path inputFile, Path certificateFile, Path outputFile) {
    PdfFileSignature pdfSignature = new PdfFileSignature();
    try {
        pdfSignature.bindPdf(inputFile.toString());
        pdfSignature.sign(1, false, signatureRectangle(), createPkcs7(certificateFile, "Document approval"));
        pdfSignature.save(outputFile.toString());
    } finally {
        pdfSignature.close();
    }
}

Esta abordagem constrói um objeto PKCS7 de assinatura primeiro e então aplicá‑lo à página 1.

Assinar um PDF com parâmetros de certificado básicos

  1. Crie a fachada PdfFileSignature e vincule o documento PDF de origem.
  2. Configure os parâmetros de certificado necessários para o exemplo de assinatura.
  3. Aplique a assinatura ao documento PDF por meio de PdfFileSignature.
  4. Salve o documento PDF atualizado.
public static void signPdfWithBasicParameters(Path inputFile, Path certificateFile, Path outputFile) {
    PdfFileSignature pdfSignature = new PdfFileSignature();
    try {
        pdfSignature.bindPdf(inputFile.toString());
        pdfSignature.setCertificate(certificateFile.toString(), CERTIFICATE_PASSWORD);
        pdfSignature.sign(1, "Document approval", "qa@example.com", "New York, USA", false, signatureRectangle());
        pdfSignature.save(outputFile.toString());
    } finally {
        pdfSignature.close();
    }
}

Certificar um PDF com DocMDP

Use uma assinatura de detecção e prevenção de modificação de documento quando precisar de restrições em nível de certificação:

  1. Crie a fachada PdfFileSignature e vincule o documento PDF de origem.
  2. Crie o objeto DocMDPSignature e configure o DocMDPAccessPermissions opções de assinatura.
  3. Aplique a assinatura de certificação e salve o documento PDF atualizado.
public static void certifyPdfWithMdpSignature(Path inputFile, Path certificateFile, Path outputFile) {
    PdfFileSignature pdfSignature = new PdfFileSignature();
    try {
        pdfSignature.bindPdf(inputFile.toString());
        DocMDPSignature signature = new DocMDPSignature(
                createPkcs7(certificateFile, "Certified for form filling and signing"),
                DocMDPAccessPermissions.FillingInForms);
        pdfSignature.certify(1, "Certified for form filling and signing", "security@example.com",
                "New York, USA", true, signatureRectangle(), signature);
        pdfSignature.save(outputFile.toString());
    } finally {
        pdfSignature.close();
    }
}