Các tệp PDF được sử dụng rộng rãi để lưu trữ và chia sẻ thông tin nhạy cảm, từ báo cáo tài chính đến tài liệu pháp lý. Tuy nhiên, những tệp này có thể dễ bị truy cập và chỉnh sửa trái phép, đó là lý do tại sao việc mã hóa và bảo vệ tệp PDF bằng mật khẩu là rất quan trọng để duy trì tính bảo mật của chúng. Trong bài đăng trên blog này, chúng ta sẽ khám phá cách mã hóa và bảo vệ bằng mật khẩu các tệp PDF bằng API REST dựa trên Python. Bằng cách làm theo các hướng dẫn từng bước được nêu trong hướng dẫn này, bạn sẽ có thể thêm một lớp bảo mật bổ sung cho các tệp PDF của mình và đảm bảo chúng luôn an toàn trước những con mắt tò mò. Vì vậy, cho dù bạn cần bảo vệ các tài liệu kinh doanh bí mật hay các tệp cá nhân, hãy đọc tiếp để tìm hiểu cách mã hóa, bảo vệ và bảo mật các tệp PDF của bạn một cách dễ dàng.

API REST để bảo vệ PDF

Aspose.PDF Cloud SDK for Python là một công cụ mạnh mẽ cho phép bạn thêm mật khẩu bảo vệ vào các tệp PDF của mình một cách dễ dàng. Chỉ với một vài dòng mã, bạn có thể mã hóa các tệp PDF của mình và hạn chế quyền truy cập đối với những cá nhân được ủy quyền. SDK cung cấp một số thuật toán mã hóa để lựa chọn, bao gồm RC4 40 bit, RC4 128 bit, AES 128 bit và AES 256 bit.

Bây giờ, để bắt đầu với Python SDK, bước đầu tiên là cài đặt nó. Nó có sẵn để tải xuống qua kho lưu trữ PIPGitHub. Vì vậy, vui lòng thực hiện lệnh sau trên dấu nhắc lệnh/thiết bị đầu cuối để cài đặt phiên bản SDK mới nhất trên hệ thống.

 pip install asposepdfcloud

Thông tin xác thực khách hàng

Sau khi cài đặt, bước quan trọng tiếp theo là đăng ký miễn phí các dịch vụ đám mây của chúng tôi trên Bảng điều khiển Aspose.Cloud. Chỉ cần đăng ký bằng GitHub hoặc tài khoản Google bằng cách nhấp vào nút Tạo tài khoản mới và cung cấp thông tin được yêu cầu. Sau đó đăng nhập bằng tài khoản mới đăng ký và lấy Thông tin xác thực khách hàng của bạn.

Thông tin xác thực khách hàng

Hình ảnh 2:- Thông tin đăng nhập của khách hàng trên bảng điều khiển Aspose.Cloud.

Mã hóa PDF bằng Python

API cho phép bạn đặt hai loại mật khẩu, tức là Mật khẩu mở tài liệu (mật khẩu người dùng) và Mật khẩu quyền (mật khẩu chủ sở hữu).

Mật khẩu mở tài liệu

Mật khẩu mở tài liệu (còn được gọi là mật khẩu người dùng) yêu cầu người dùng nhập mật khẩu để mở tệp PDF.

mật khẩu quyền

Cần có mật khẩu của quyền (còn được gọi là mật khẩu chính/chủ sở hữu) để thay đổi cài đặt quyền. Sử dụng mật khẩu của quyền, bạn có thể hạn chế in, chỉnh sửa và sao chép nội dung trong PDF. Cần có mật khẩu này để thay đổi các giới hạn mà bạn đã áp dụng.

Nếu tệp PDF được bảo mật bằng cả hai loại mật khẩu thì có thể mở tệp PDF bằng một trong hai loại mật khẩu.

Ngoài ra, xin lưu ý rằng API chấp nhận mật khẩu của chủ sở hữu và người dùng ở định dạng được mã hóa Base64. Trong đoạn mã sau, mật khẩu chủ sở hữu (b3duZXJcLy8/ICQxMl5QYXNzd29yZCEm) và Mật khẩu người dùng (dXNlciAkXlBhc3N3b3JkISY=) được chỉ định. Vui lòng làm theo các bước dưới đây để mã hóa tệp PDF bằng đoạn mã Python.

  • Tạo một thể hiện của lớp ApiClient trong khi cung cấp Client ID & Client Secret làm đối số
  • Thứ hai, tạo một thể hiện của lớp PdfApi lấy đối tượng ApiClient làm đối số đầu vào
  • Bây giờ, hãy gọi phương thức postencryptdocumentinstorage(..) của lớp PdfApi trong khi chuyển tên của tệp PDF đầu vào, mật khẩu người dùng và chủ sở hữu (ở dạng mã hóa Base64) và thuật toán Mật mã làm đối số.

Thế là xong! Chỉ với một vài dòng mã, chúng ta đã học được các bước để bảo vệ tệp PDF bằng mật khẩu bằng cách sử dụng Aspose.PDF Cloud SDK cho Python.

def encrypt():
    try:
        #Client credentials
        client_secret = "d34641f4ff6bcc96e3a0ab6ac69768b2"
        client_id = "8e2b082f-1f74-4bc0-b454-5f68457d1c97"

        #initialize PdfApi client instance using client credetials
        pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)

        # tạo phiên bản PdfApi trong khi chuyển PdfApiClient làm đối số
        pdf_api = PdfApi(pdf_api_client)

        #input PDF file name
        input_file = 'image-based-pdf-sample.pdf'

        # gọi API để mã hóa tài liệu
        response = pdf_api.post_encrypt_document_in_storage(name=input_file,user_password='dXNlciAkXlBhc3N3b3JkISY=',owner_password='b3duZXJcLy8/ICQxMl5QYXNzd29yZCEm',crypto_algorithm='AESX128')

        # in thông báo thành công trong bảng điều khiển (tùy chọn)
        print('PDF encrypted successfully !')    
    except ApiException as e:
        print("Exception while calling PdfApi: {0}".format(e))
        print("Code:" + str(e.code))
        print("Message:" + e.message)

Xin lưu ý rằng bạn có thể sử dụng một trong hai giá trị thuật toán mật mã trong quá trình mã hóa PDF

Tên Mô tả
RC4x40 RC4 với độ dài phím 40.
RC4x128 RC4 với độ dài khóa 128.
AESx128 AES với độ dài khóa 128.
AESx256 AES với độ dài khóa 256.

Có thể tải xuống tệp PDF đầu vào được sử dụng trong ví dụ trên từ awesomeTable.pdf.

Mã hóa PDF bằng lệnh cURL

Các API REST cũng có thể truy cập thông qua các lệnh cURL trên bất kỳ nền tảng nào. Chúng ta có thể sử dụng dấu nhắc lệnh/cửa sổ đầu cuối để thực thi các lệnh cURL. Vì Aspose.PDF Cloud cũng được phát triển theo kiến trúc REST nên chúng ta cũng có thể sử dụng lệnh cURL để mã hóa các tệp PDF. Nhưng trước khi tiếp tục, chúng tôi cần tạo Mã thông báo web JSON (JWT) dựa trên thông tin đăng nhập khách hàng cá nhân của bạn được chỉ định trên bảng điều khiển Aspose.Cloud. Điều này là bắt buộc vì chỉ những người dùng đã đăng ký mới có thể truy cập các API của chúng tôi. Vui lòng thực hiện lệnh sau để tạo mã thông báo JWT.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bbf94a2c-6d7e-4020-b4d2-b9809741374e&client_secret=1c9379bb7d701c26cc87e741a29987bb" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Bây giờ, khi chúng tôi có mã thông báo JWT, chúng tôi cần thực hiện lệnh sau để mã hóa tài liệu PDF.

curl -v -X POST "https://api.aspose.cloud/v3.0/pdf/awesomeTable.pdf/encrypt?userPassword=dXNlciAkXlBhc3N3b3JkISY%3D&ownerPassword=b3duZXJcLy8%2FICQxMl5QYXNzd29yZCEm&cryptoAlgorithm=AESx128&permissionsFlags=AssembleDocument&usePdf20=false" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

Phần kết luận

Tóm lại, sử dụng API REST để mã hóa tệp PDF là cách nhanh chóng và hiệu quả để đảm bảo tính bảo mật và quyền riêng tư cho các tài liệu quan trọng của bạn. Cho dù bạn cần khóa PDF khỏi việc chỉnh sửa hay thêm mật khẩu bảo vệ, các phương pháp này đều cung cấp một giải pháp thuận tiện vừa thân thiện với người dùng vừa an toàn. Bằng cách làm theo các bước được nêu trong bài đăng trên blog này, bạn có thể dễ dàng bảo mật các tệp PDF của mình và yên tâm rằng thông tin có giá trị của bạn được bảo vệ.

Xin lưu ý rằng SDK đám mây của chúng tôi được xây dựng theo giấy phép MIT, vì vậy bạn có thể tải xuống đoạn mã hoàn chỉnh từ GitHub. Ngoài ra, chúng tôi thực sự khuyên bạn nên khám phá Hướng dẫn dành cho nhà phát triển để tìm hiểu thêm về các tính năng thú vị khác của API.

Cuối cùng, nếu bạn gặp phải bất kỳ sự cố nào hoặc có bất kỳ câu hỏi nào liên quan khi sử dụng API, vui lòng liên hệ với chúng tôi qua diễn đàn hỗ trợ khách hàng miễn phí.

Những bài viết liên quan

Chúng tôi cũng khuyên bạn nên xem qua các bài viết sau để tìm hiểu thêm về