Crypter le PDF avec Rust
Contents
[
Hide
]
Crypter le fichier PDF en utilisant le mot de passe utilisateur ou propriétaire
Pour chiffrer facilement et en toute sécurité les documents, vous pouvez utiliser Aspose.PDF for Rust via C++.
- Le user_password, s’il est défini, est ce que vous devez fournir pour ouvrir un PDF. Acrobat/Reader demandera à l’utilisateur de saisir le mot de passe utilisateur. S’il n’est pas correct, le document ne s’ouvrira pas.
- Le owner_password, s’il est défini, contrôle les autorisations, comme l’impression, la modification, l’extraction, les commentaires, etc. Acrobat/Reader refusera ces actions en fonction des paramètres d’autorisation. Acrobat exigera ce mot de passe si vous souhaitez définir/modifier les autorisations.
Le PDF est protégé par les mots de passe utilisateur et propriétaire, des autorisations d’accès spécifiques, et un chiffrement AES-128 conforme aux normes PDF 2.0. Une fois chiffré, le document est enregistré sur le disque, garantissant un accès contrôlé et une manipulation sécurisée du fichier PDF.
- Créer un nouveau document PDF.
- Chiffrer le document PDF avec la méthode encrypt.
- Spécifiez un mot de passe utilisateur pour restreindre l’ouverture du document.
- Spécifiez un mot de passe propriétaire pour contrôler les autorisations.
- Définissez les actions autorisées à l’aide d’un drapeau de bits de permissions.
- Choisissez AES-128 comme algorithme de chiffrement.
- Activez le chiffrement PDF 2.0 pour la conformité aux exigences de sécurité modernes.
- Enregistrez le PDF chiffré en utilisant save_as.
use asposepdf::{CryptoAlgorithm, Document, Permissions};
fn main() -> Result<(), Box<dyn std::error::Error>> {
// Create a new PDF-document
let pdf = Document::new()?;
// Encrypt PDF-document
pdf.encrypt(
"userpass", // User password
"ownerpass", // Owner password
Permissions::PRINT_DOCUMENT | Permissions::MODIFY_CONTENT | Permissions::FILL_FORM, // Permissions bitflag
CryptoAlgorithm::AESx128, // Encryption algorithm
true, // Use PDF 2.0 encryption
)?;
// Save the encrypted PDF-document
pdf.save_as("sample_with_password.pdf")?;
Ok(())
}