Java でのデジタル署名の追加または PDF へのデジタル署名
Contents
[
Hide
]
Aspose.PDF for Java は、PdfFileSignature を通じて複数の署名フローをサポートしています。
証明書オブジェクトの使用して PDF への署名
- PdfFileSignature ファサードを作成し、ソース PDF ドキュメントをバインドしてください。
- PKCS7 署名オブジェクトを作成し、署名オプションを構成してください。
- PdfFileSignature を使用して PDF ドキュメントに署名を適用してください。
- 更新された PDF ドキュメントを保存してください。
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();
}
}
このアプローチでは、まず PKCS7 署名オブジェクトを構築し、次にページ 1 に適用します。
基本的な証明書パラメータで PDF に署名
- PdfFileSignature ファサードを作成し、ソース PDF ドキュメントをバインドしてください。
- 署名サンプルで必要とされる証明書パラメータを構成してください。
- PdfFileSignature を使用して PDF ドキュメントに署名を適用してください。
- 更新された PDF ドキュメントを保存してください。
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();
}
}
DocMDP で PDF の認証
認証レベルの制限が必要な場合は、文書の変更検出および防止署名を使用してください。
- PdfFileSignature ファサードを作成し、ソース PDF ドキュメントをバインドしてください。
- DocMDPSignature オブジェクトを作成し、DocMDPAccessPermissions 署名オプションを構成してください。
- 認証署名を適用し、更新された PDF ドキュメントを保存してください。
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();
}
}