HTML JPG PDF XML DOCX
  Product Family
PDF

Thay đổi mật khẩu trong PDF qua Python SDK

API cho thay đổi mật khẩu trong tài liệu PDF bằng cách sử dụng Aspose.PDF Cloud Python SDK

Get Started

Cách thay đổi mật khẩu trong PDF qua Cloud Python SDK

Để thay đổi mật khẩu trong PDF, chúng ta sẽ sử dụng Aspose.PDF Cloud Python SDK. Cloud SDK này hỗ trợ các lập trình viên Python phát triển ứng dụng tạo, chú thích, chỉnh sửa và chuyển đổi PDF dựa trên đám mây bằng ngôn ngữ lập trình Python qua Aspose.PDF REST API. Chỉ cần tạo một tài khoản tại Aspose for Cloud và nhận thông tin ứng dụng của bạn. Khi bạn đã có App SID & key, bạn đã sẵn sàng để sử dụng Aspose.PDF Cloud Python SDK. Nếu gói python được lưu trữ trên Github, bạn có thể cài đặt trực tiếp từ Github:

Cài đặt từ Github



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

Lệnh Console Trình quản lý gói


    pip install asposepdfcloud

Các bước để thay đổi mật khẩu trong PDF qua Python

Các nhà phát triển Aspose.PDF Cloud có thể dễ dàng tải & thay đổi mật khẩu trong PDF chỉ trong vài dòng mã.

  1. Cài đặt Python SDK
  2. Tải lên một tài liệu PDF lên máy chủ Aspose Cloud
  3. Gọi API để Thay đổi Mật khẩu trong tài liệu Pdf.
  4. Kiểm tra phản hồi và ghi lại kết quả.
  5. Tải xuống tài liệu PDF đã xử lý từ máy chủ Aspose Cloud
 

Thay đổi mật khẩu trong PDF bằng 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()
 

Thay đổi mật khẩu trong PDF

Thay đổi mật khẩu trong tài liệu PDF là rất quan trọng khi quyền truy cập vào nội dung của nó bị hạn chế do mã hóa. Nó cho phép người dùng được ủy quyền lấy lại quyền kiểm soát hoàn toàn đối với tệp, cho phép chỉnh sửa, xem và trích xuất nội dung. Quá trình này đặc biệt quan trọng trong các quy trình làm việc nơi các tài liệu bảo mật phải được truy cập thông qua lập trình hoặc tích hợp vào các hệ thống lớn hơn.

Sử dụng các công cụ như Aspose.PDF Cloud, việc thay đổi mật khẩu có thể được thực hiện dễ dàng và an toàn chỉ với mật khẩu chủ sở hữu hoặc người dùng chính xác. Điều này đảm bảo thông tin nhạy cảm vẫn được bảo vệ trong khi vẫn cho phép tính linh hoạt cho những người cần truy cập hợp pháp.

Cuối cùng, việc thay đổi mật khẩu trong PDF cho phép xử lý tài liệu trơn tru và củng cố tầm quan trọng của các thực tiễn bảo mật tài liệu mạnh mẽ nhưng có thể quản lý được. Thay đổi mật khẩu trong tài liệu PDF với Aspose.PDF Cloud Python SDK.

Với thư viện Python của chúng tôi, bạn có thể:

  • Thêm tiêu đề & chân trang của tài liệu PDF dưới dạng văn bản hoặc hình ảnh.
  • Thêm bảng & đóng dấu văn bản hoặc hình ảnh vào tài liệu PDF.
  • Nối nhiều tài liệu PDF vào một tệp hiện có.
  • Làm việc với các tệp đính kèm, chú thích & trường biểu mẫu PDF.
  • Áp dụng mã hóa hoặc giải mã cho tài liệu PDF & đặt mật khẩu.
  • Xóa tất cả dấu & bảng từ một trang hoặc toàn bộ tài liệu PDF.
  • Xóa một dấu hoặc bảng cụ thể khỏi tài liệu PDF theo ID của nó.
  • Thay thế một hoặc nhiều trường hợp văn bản trên một trang PDF hoặc từ toàn bộ tài liệu.
  • Hỗ trợ rộng rãi cho việc chuyển đổi tài liệu PDF sang các định dạng tệp khác nhau.
  • Trích xuất các yếu tố khác nhau của tệp PDF & tối ưu hóa tài liệu PDF.
  • Bạn có thể thử nghiệm các ứng dụng miễn phí của chúng tôi để kiểm tra chức năng trực tuyến.

  •