Добавить цифровую подпись в PDF в Node.js
Цифровая подпись в PDF документе — это способ проверки подлинности и целостности документа. Это процесс электронной подписи PDF документа с использованием закрытого ключа и цифрового сертификата. Эта подпись гарантирует держателю, что документ не был изменен или искажен с момента подписания и что подписавший является тем, кем он себя утверждает. Чтобы подписать PDF с помощью Node.js, используйте инструмент Aspose.PDF.
Если вы хотите подписать PDF файл, вы можете использовать функцию AsposePdfSignPKCS7.
Возможно использование параметров, связанных с подписью:
-
fileName
-
pageNum
-
fileSign
-
pswSign
-
setXIndent
-
setYIndent
-
setHeight
-
setWidth
-
reason
-
contact
-
location
-
isVisible
-
signatureAppearance
-
fileNameResult
Этот фрагмент кода использует модуль AsposePDFforNode.js в среде Node.js для цифровой подписи PDF-файла с использованием подписи PKCS7.
CommonJS:
-
Вызовите
require
и импортируйте модульasposepdfnodejs
как переменнуюAsposePdf
. -
Укажите имя PDF-файла для подписи, файл ключа PKCS7 и файл изображения подписи. Сертификат и изображение могут быть размещены в любом месте вашей файловой системы, откуда вы их загружаете для подписания PDF.
-
Вызовите
AsposePdf
как Promise и выполните операцию для подписания файла. Получите объект в случае успеха. -
Вызовите функцию AsposePdfSignPKCS7.
-
Подпишите PDF-файл с помощью цифровых подписей. Параметры, связанные с подписью (такие как файл ключа, пароль, координаты, причина, контакт, местоположение и т. д.).
-
Таким образом, если ‘json.errorCode’ равно 0, результат операции сохраняется в “ResultSignPKCS7.pdf”. Если параметр json.errorCode не равен 0 и, соответственно, в вашем файле появляется ошибка, информация об ошибке будет содержаться в ‘json.errorText’.
const AsposePdf = require('asposepdfnodejs');
const pdf_file = 'Aspose.pdf';
AsposePdf().then(AsposePdfModule => {
/*Ключ PKCS7*/
const test_pfx_file = 'test.pfx';
/*Внешний вид подписи*/
const sign_img_file = 'Aspose.jpg';
/*Подпишите PDF-файл цифровыми подписями и сохраните "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.
-
Подпишите PDF-файл с помощью цифровых подписей. Параметры, связанные с подписью (например, файл ключа, пароль, координаты, причина, контакт, местоположение и т. д.).
-
Таким образом, если ‘json.errorCode’ равен 0, результат операции сохраняется в “ResultSignPKCS7.pdf”. Если параметр json.errorCode не равен 0 и, соответственно, в вашем файле появляется ошибка, информация об ошибке будет содержаться в ‘json.errorText’.
import AsposePdf from 'asposepdfnodejs';
const AsposePdfModule = await AsposePdf();
const pdf_file = 'Aspose.pdf';
/*Ключ PKCS7*/
const test_pfx_file = 'test.pfx';
/*Внешний вид подписи*/
const sign_img_file = 'Aspose.jpg';
/*Подписать PDF-файл с помощью цифровых подписей и сохранить в "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);