HTML JPG PDF XML DOCX
  Product Family
PDF

Changement de mot de passe dans un PDF via Python SDK

API pour le changement de mot de passe dans les documents PDF utilisant Aspose.PDF Cloud Python SDK

Get Started

Comment changer un mot de passe dans un PDF via Cloud Python SDK

Pour changer le mot de passe dans un PDF, nous utiliserons Aspose.PDF Cloud Python SDK. Ce SDK Cloud aide les programmeurs Python à développer des applications de création, d’annotation, d’édition et de conversion de PDF basées sur le cloud en utilisant le langage de programmation Python via l’API REST Aspose.PDF. Créez simplement un compte sur Aspose for Cloud et obtenez les informations de votre application. Une fois que vous avez le SID et la clé de l’application, vous êtes prêt à utiliser Aspose.PDF Cloud Python SDK. Si le package Python est hébergé sur Github, vous pouvez l’installer directement depuis Github :

Installation depuis Github



    pip install git+https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-python.git

Commande de la console du gestionnaire de packages


    pip install asposepdfcloud

Étapes pour changer le mot de passe dans un PDF via Python

Les développeurs Aspose.PDF Cloud peuvent facilement charger et changer un mot de passe dans un PDF en quelques lignes de code.

  1. Installer Python SDK
  2. Télécharger un document PDF sur le serveur Aspose Cloud
  3. Appeler l’API pour changer le mot de passe dans le document PDF.
  4. Vérifiez la réponse et consignez le résultat.
  5. Télécharger le document PDF traité depuis le serveur Aspose Cloud
 

Changement de mot de passe dans un PDF en utilisant Cloud Python SDK


    import shutil
    import json
    import logging
    from pathlib import Path
    import base64
    from asposepdfcloud import ApiClient, PdfApi

    # Configure logging
    logging.basicConfig(level=logging.INFO, format="%(asctime)s - %(levelname)s - %(message)s")

    class Config:
        """Configuration parameters."""
        CREDENTIALS_FILE = Path(r"..\\credentials.json")
        LOCAL_FOLDER = Path(r"C:\Samples")
        PDF_DOCUMENT_NAME = "sample_encrypted.pdf"
        LOCAL_RESULT_DOCUMENT_NAME = "output_sample.pdf"
        DOCUMENT_PASSWORD = 'Owner-Password'
        NEW_USER_PASSWORD = "NEW-User-Password"
        NEW_OWNER_PASSWORD = "NEW-Owner-Password"
    
     class pdfEncoder:
        """Class for replacing password in PDF encrypted document using Aspose PDF Cloud API."""
        def __init__(self, credentials_file: Path = Config.CREDENTIALS_FILE):
            self.pdf_api = None
            self._init_api(credentials_file)

       def _init_api(self, credentials_file: Path):
            """Initialize the API client."""
            try:
                with credentials_file.open("r", encoding="utf-8") as file:
                    credentials = json.load(file)
                    api_key, app_id = credentials.get("key"), credentials.get("id")
                    if not api_key or not app_id:
                        raise ValueError("init_api(): Error: Missing API keys in the credentials file.")
                    self.pdf_api = PdfApi(ApiClient(api_key, app_id))
            except (FileNotFoundError, json.JSONDecodeError, ValueError) as e:
                logging.error(f"init_api(): Failed to load credentials: {e}")

        def upload_document(self):
            """ Upload a PDF document to the Aspose Cloud server. """
            if self.pdf_api:
                file_path = Config.LOCAL_FOLDER / Config.PDF_DOCUMENT_NAME
                try:
                    self.pdf_api.upload_file(Config.PDF_DOCUMENT_NAME, str(file_path))
                    logging.info(f"upload_file(): File '{Config.PDF_DOCUMENT_NAME}' uploaded successfully.")
                except Exception as e:
                    logging.error(f"upload_document(): Failed to upload file: {e}")

        def download_result(self):
            """ Download the processed PDF document from the Aspose Cloud server. """
            if self.pdf_api:
                try:
                    temp_file = self.pdf_api.download_file(Config.PDF_DOCUMENT_NAME)
                    local_path = Config.LOCAL_FOLDER / ("password_change_" + Config.LOCAL_RESULT_DOCUMENT_NAME)
                    shutil.move(temp_file, str(local_path))
                    logging.info(f"download_result(): File successfully downloaded: {local_path}")
                except Exception as e:
                    logging.error(f"download_result(): Failed to download file: {e}")

        def change_passwords(self):
            """Decrypt the PDF document."""
            if self.pdf_api:
                try:
                    password_encoded = base64.b64encode(bytes(Config.DOCUMENT_PASSWORD, encoding='utf-8'))

                    new_owner_pwd_encoded = base64.b64encode(bytes(Config.NEW_OWNER_PASSWORD, encoding='utf-8'))
                    new_user_pwd_encoded = base64.b64encode(bytes(Config.NEW_USER_PASSWORD, encoding='utf-8'))

                    response = self.pdf_api.post_change_password_document_in_storage(Config.PDF_DOCUMENT_NAME, password_encoded, new_user_pwd_encoded, new_owner_pwd_encoded)
                    if response.code == 200:
                        logging.info(f"change_passwords(): Password in document #{Config.PDF_DOCUMENT_NAME} successfully modified.")
                    else:
                        logging.error(f"change_passwords(): Failed to chnage passowd in document #{Config.PDF_DOCUMENT_NAME}. Response code: {response.code}")
                except Exception as e:
                    logging.error(f"change_passwords(): Error while change passwords in document: {e}")


    if __name__ == "__main__":
        pdf_encoder = pdfEncoder()
        pdf_encoder.upload_document()
        pdf_encoder.change_passwords()
        pdf_encoder.download_result()
 

Changement de mot de passe dans un PDF

Changer un mot de passe dans un document PDF est crucial lorsque l’accès à son contenu est restreint en raison du cryptage. Cela permet aux utilisateurs autorisés de reprendre le contrôle total du fichier, permettant l’édition, la visualisation et l’extraction de contenu. Ce processus est particulièrement important dans les flux de travail où des documents sécurisés doivent être accessibles de manière programmatique ou intégrés dans des systèmes plus vastes.

En utilisant des outils comme Aspose.PDF Cloud, le changement de mot de passe peut être effectué facilement et en toute sécurité avec juste le mot de passe propriétaire ou utilisateur correct. Cela garantit que les informations sensibles restent protégées tout en permettant une flexibilité pour ceux qui ont besoin d’un accès légitime.

En fin de compte, le changement de mot de passe dans un PDF permet une gestion fluide des documents et renforce l’importance de pratiques de sécurité documentaire solides mais gérables. Changez un mot de passe dans des documents PDF avec Aspose.PDF Cloud Python SDK.

Avec notre bibliothèque Python, vous pouvez :

  • Ajouter l’en-tête et le pied de page du document PDF en format texte ou image.
  • Ajouter des tables et des tampons de texte ou d’image aux documents PDF.
  • Ajouter plusieurs documents PDF à un fichier existant.
  • Travailler avec des pièces jointes PDF, des annotations et des champs de formulaire.
  • Appliquer le cryptage ou le décryptage aux documents PDF et définir un mot de passe.
  • Supprimer tous les tampons et tables d’une page ou d’un document PDF entier.
  • Supprimer un tampon ou une table spécifique du document PDF par son ID.
  • Remplacer une ou plusieurs instances de texte sur une page PDF ou dans l’ensemble du document.
  • Support étendu pour la conversion de documents PDF en divers autres formats de fichiers.
  • Extraire divers éléments des fichiers PDF et optimiser les documents PDF.
  • Vous pouvez essayer nos applications gratuites pour tester la fonctionnalité en ligne.

  •