Bonjour,
Cela fait plusieurs jours que j'essaye d'ouvrir avec PDFBox un document PDF protégé par un mot de passe, ce document est protégé par PDFBox lui-même.
Voici mon problème:
Au départ, j'ai un document PDF encrypté (par XEP4.19), je le décrypte avec PDFBox de la manière suivante:
Cela fonctionne sans problème, je peux faire ce que je veux dans mon document, ici je remplace une page par une autre d'un autre document PDF. Ensuite je "ré-encrypte" le document comme cela:pdfDoc.openProtection(new StandardDecryptionMaterial("mdp"));
Là aussi pas de problème le document est bien encrypté et je peux constater avec Adobe Reader que les permissions sont correctes.final AccessPermission accessPermissions = new AccessPermission();
ap.setCanAssembleDocument(false);
ap.setCanModify(false);
pdfDoc.protect(new StandardProtectionPolicy("mdp", null, accessPermissions));
Ensuite je veux ré-ouvrir ce document PDF (celui encrypté par PDFBox), je fais donc comme tout a l'heure:
et là paf! j'ai l'exception suivante:pdfDoc.openProtection(new StandardDecryptionMaterial("mdp"));
Pourtant j'utilise le bon mdp! Je souspsonne un problème d'encryption du mot de passe... J'ai chercher des heures et des heures sans rien trouver qui puisse résoudre ce problème. PDFBox n'est pas capable d'ouvrir un document qu'il a lui même encrypté! C'est quand même pas logique!org.apache.pdfbox.exceptions.CryptographyException: Error: The supplied password does not match either the owner or user password in the document.
at org.apache.pdfbox.pdmodel.encryption.StandardSecurityHandler.decryptDocument(StandardSecurityHandler.java:239)
at org.apache.pdfbox.pdmodel.PDDocument.openProtection(PDDocument.java:1325)
Toute aide sera plus que bienvenue!
Partager