Node.js で PDF にデジタル署名を追加する
Contents
[
Hide
]
PDF ドキュメントにおけるデジタル署名は、文書の真正性と完全性を検証する方法です。これは、プライベートキーとデジタル証明書を使用して PDF ドキュメントに電子署名を行うプロセスです。この署名は、署名後に文書が変更されていないこと、そして署名者がその文書の承認者であることを保証します。Node.js で PDF に署名するには、Aspose.PDF ツールを使用します。
PDF ファイルに署名したい場合は、次のものを使用できます AsposePdfSignPKCS7 function.
署名に関連する parameters を使用できます:
- fileName
- pageNum
- fileSign
- pswSign
- setXIndent
- setYIndent
- setHeight
- setWidth
- 理由
- 連絡先
- 場所
- isVisible
- signatureAppearance
- fileNameResult
このコードスニペットは、Node.js 環境で AsposePDFforNode.js モジュールを使用して、PKCS7 署名を用いて PDF ファイルにデジタル署名を行います。
CommonJS:
- 呼び出す
requireそしてインポートasposepdfnodejsモジュールとしてAsposePdf変数。 - 署名対象の PDF ファイル名、PKCS7 鍵ファイル、署名外観画像ファイルを指定します。証明書と画像は、PDF 署名のためにアップロードする任意のファイルシステム上の場所に配置できます。
- 呼び出す
AsposePdfPromiseとして、ファイルの署名操作を実行します。成功した場合、オブジェクトを受け取ります。 - 呼び出す AsposePdfSignPKCS7 function.
- デジタル署名で PDF ファイルに署名します。署名に関連するパラメータ(鍵ファイル、パスワード、座標、理由、連絡先、場所など)。
- したがって、‘json.errorCode’ が 0 の場合、操作の結果は “ResultSignPKCS7.pdf” に保存されます。json.errorCode パラメータが 0 でない場合、ファイルにエラーが発生し、エラー情報は ‘json.errorText’ に含まれます。
const AsposePdf = require('asposepdfnodejs');
const pdf_file = 'Aspose.pdf';
AsposePdf().then(AsposePdfModule => {
/*Key PKCS7*/
const test_pfx_file = 'test.pfx';
/*Signature appearance*/
const sign_img_file = 'Aspose.jpg';
/*Sign a PDF-file with digital signatures and save the "ResultSignPKCS7.pdf"*/
const json = AsposePdfModule.AsposePdfSignPKCS7(pdf_file, 1, test_pfx_file, "Pa$$w0rd2023", 100, 100, 200, 100, "Reason", "Contact", "Location", 1, sign_img_file, "ResultSignPKCS7.pdf");
console.log("AsposePdfSignPKCS7 => %O", json.errorCode == 0 ? json.fileNameResult : json.errorText);
});
ECMAScript/ES6:
- インポート
asposepdfnodejsモジュール。 - 署名対象の PDF ファイル名、PKCS7 キーファイル、および署名外観画像ファイルを指定します。
- AsposePdf モジュールを初期化します。成功した場合はオブジェクトを受け取ります。
- 呼び出す AsposePdfSignPKCS7 function.
- デジタル署名で PDF ファイルに署名します。署名に関連するパラメータ(鍵ファイル、パスワード、座標、理由、連絡先、場所など)。
- したがって、‘json.errorCode’ が 0 の場合、操作の結果は “ResultSignPKCS7.pdf” に保存されます。json.errorCode パラメータが 0 でない場合、ファイルにエラーが発生し、エラー情報は ‘json.errorText’ に含まれます。
import AsposePdf from 'asposepdfnodejs';
const AsposePdfModule = await AsposePdf();
const pdf_file = 'Aspose.pdf';
/*Key PKCS7*/
const test_pfx_file = 'test.pfx';
/*Signature appearance*/
const sign_img_file = 'Aspose.jpg';
/*Sign a PDF-file with digital signatures and save the "ResultSignPKCS7.pdf"*/
const json = AsposePdfModule.AsposePdfSignPKCS7(pdf_file, 1, test_pfx_file, "Pa$$w0rd2023", 100, 100, 200, 100, "Reason", "Contact", "Location", 1, sign_img_file, "ResultSignPKCS7.pdf");
console.log("AsposePdfSignPKCS7 => %O", json.errorCode == 0 ? json.fileNameResult : json.errorText);