Encriptar PDF en Node.js
Encriptar Archivo PDF usando Contraseña de Usuario o Propietario
Si estás enviando un correo electrónico a alguien con un archivo PDF adjunto que contiene información confidencial, es posible que desees agregarle algo de seguridad primero para evitar que caiga en las manos incorrectas. La mejor manera de limitar el acceso no autorizado a un documento PDF es protegerlo con una contraseña. Para encriptar documentos de manera fácil y segura, puedes usar Aspose.PDF para Node.js via C++.
Por favor, especifica diferentes contraseñas de usuario y propietario mientras encriptas el archivo PDF.
- La contraseña de usuario, si se establece, es lo que necesitas proporcionar para abrir un PDF. Acrobat/Reader solicitará a un usuario que ingrese la contraseña de usuario. Si no es correcta, el documento no se abrirá.
- La contraseña de propietario, si se establece, controla los permisos, como impresión, edición, extracción, comentarios, etc. Acrobat/Reader deshabilitará estas cosas basándose en la configuración de permisos. Acrobat requerirá esta contraseña si desea establecer/cambiar permisos.
En caso de que desee cifrar un archivo PDF, puede utilizar la función AsposePdfEncrypt. Si desea cifrar un archivo PDF, pruebe el siguiente fragmento de código:
CommonJS:
- Llame a
require
e importe el móduloasposepdfnodejs
como variableAsposePdf
. - Especifique el nombre del archivo PDF que será cifrado.
- Llame a
AsposePdf
como Promise y realice la operación para cifrar el archivo. Reciba el objeto si tiene éxito. - Llame a la función AsposePdfEncrypt.
- Cifre el archivo PDF con las contraseñas “user” y “owner”.
- Por lo tanto, si ‘json.errorCode’ es 0, el resultado de la operación se guarda en “ResultEncrypt.pdf”. Si el parámetro json.errorCode no es 0 y, en consecuencia, aparece un error en su archivo, la información del error se encontrará en ‘json.errorText’.
const AsposePdf = require('asposepdfnodejs');
const pdf_file = 'Aspose.pdf';
AsposePdf().then(AsposePdfModule => {
/*Encriptar un archivo PDF con las contraseñas "user" y "owner", y guardar el "ResultEncrypt.pdf"*/
const json = AsposePdfModule.AsposePdfEncrypt(pdf_file, "user", "owner", AsposePdfModule.Permissions.PrintDocument, AsposePdfModule.CryptoAlgorithm.RC4x40, "ResultEncrypt.pdf");
console.log("AsposePdfEncrypt => %O", json.errorCode == 0 ? json.fileNameResult : json.errorText);
});
Existen diferentes permisos de encriptación:
-
Module.Permissions.PrintDocument
-
Module.Permissions.ModifyContent
-
Module.Permissions.ExtractContent
-
Module.Permissions.ModifyTextAnnotations
-
Module.Permissions.FillForm
-
Module.Permissions.ExtractContentWithDisabilities
-
Module.Permissions.AssembleDocument
-
Module.Permissions.PrintingQuality
Hay varios algoritmos de encriptación:
- Module.CryptoAlgorithm.RC4x40
- Module.CryptoAlgorithm.RC4x128
- Module.CryptoAlgorithm.AESx128
- Module.CryptoAlgorithm.AESx256
ECMAScript/ES6:
-
Importa el módulo
asposepdfnodejs
. -
Especifica el nombre del archivo PDF que cambiará el encriptado.
-
Inicializa el módulo AsposePdf. Recibe el objeto si tiene éxito.
-
Llama a la función AsposePdfEncrypt.
-
Desencripta el archivo PDF con las contraseñas “user” y “owner”.
-
Por lo tanto, si ‘json.errorCode’ es 0, el resultado de la operación se guarda en “ResultEncrypt.pdf”. Si el parámetro json.errorCode no es 0 y, en consecuencia, aparece un error en su archivo, la información del error estará contenida en ‘json.errorText’.
import AsposePdf from 'asposepdfnodejs';
const AsposePdfModule = await AsposePdf();
const pdf_file = 'Aspose.pdf';
/*Encripta un archivo PDF con las contraseñas "user" y "owner", y guarda el "ResultEncrypt.pdf"*/
const json = AsposePdfModule.AsposePdfEncrypt(pdf_file, "user", "owner", AsposePdfModule.Permissions.PrintDocument, AsposePdfModule.CryptoAlgorithm.RC4x40, "ResultEncrypt.pdf");
console.log("AsposePdfEncrypt => %O", json.errorCode == 0 ? json.fileNameResult : json.errorText);