En este código, estoy tratando de crear un archivo pdf y cifrarlo, puedo crear un cifrado pdf, en este código estoy creando un Tempfile en mi máquina local, luego estoy cifrando ese archivo y aquí ' qpdf --encrypt Decorpot test 40 -- ${tempFileName} --replace-input ' solo estoy reemplazando el archivo no encriptado con un archivo encriptado y se almacena correctamente como un archivo encriptado en la máquina local, pero cuando voy a cargar en s3 aws solo archivo no encriptado está agregado. Probé tantos métodos... por favor ayúdenme... Gracias
module.exports.generateChecklistPdf2 = function () { return new Promise((resolve, reject) => { let htmlFilePath = ''; htmlFilePath = path.join(__dirname, '../static/html/checkList.html'); htmlFilePath = htmlFilePath.replace(new RegExp(/\\/g), '/'); pdfFilePath = path.join(__dirname, '../uploads/' + Math.ceil(Math.random() * 810000) + '.pdf'); pdfFilePath = pdfFilePath.replace(new RegExp(/\\/g), '/'); let date = new Date(); return ejs.renderFile(htmlFilePath, { moment: moment, date }, {}, function (err, htmlFile) { if (err) return console.log(err); var tempFileName = pdfFilePath; var file = fs.createWriteStream(tempFileName); assetsPath = path.join(__dirname, '../static/'); assetsPath = assetsPath.replace(new RegExp(/\\/g), '/'); options = { base: 'file:///' + assetsPath, } setTimeout(() => { var cmd = `qpdf --encrypt Decorpot test 40 -- ${tempFileName} --replace-input`; exec(cmd, function (err) { if (err) { console.error('Error occured: ' + err); } else { console.log('PDF encrypted :)', tempFileName); } }); }, 1000) return pdf.create(htmlFile, options).toStream(function (err, stream) { stream.pipe(file).on('close', () => { formData = { customerName: "customername", file: fs.createReadStream(pdfFilePath) } let url = ''; if (process.env.NODE_ENV == 'production') { url = 'http://13.233.26.162:5003/api/file/upload'; } else { url = 'http://localhost:5003/api/file/upload'; } return request.post({ url: url, formData: formData }, function (err, res) { if (err) return console.log(err); console.log(res.body) let resolveObject = {}; resolveObject.pdfUrl = res.body; resolve(resolveObject); }); }); }); }); }); }