如何加密/添加密碼與權限到 PDF 文件
使用密碼和特定權限來保護 PDF 文件,對於防止敏感文件遭未授權存取和篡改至關重要。 這[發布]IronSecure Doc 的加密/添加密碼及權限 API 提供了一種高效的方法,可以使用用戶和所有者密碼加密 PDF 文件,同時配置列印、表單填寫、註釋等權限。 此 API 確保 PDF 完全受到保護並且可以控制存取,非常適合用於法律、財務或個人文件。
如何加密/添加密碼與權限到 PDF 文件
- 提取並啟動 IronSecureDoc Docker 映像檔
- 使用 Swagger 測試 API
- 指定密碼和權限的參數
- 執行 API 呼叫以套用變更
- 匯出加密的 PDF 文件
提取並啟動IronSecureDoc
如果您還沒有運行 IronSecureDoc,請按照以下鏈接進行設置:
本地主持 | 部署到雲端 |
---|---|
[發布] 加密/添加密碼與權限 API
這[發布]加密/添加密碼與權限 API 允許您透過使用密碼加密 PDF 文件並為各種操作設置特定權限,來為文件增加安全層。 無論是授予讀取權限、允許填寫表單,還是禁用列印,此 API 都讓您能夠控制 PDF 檔案的訪問和修改方式。
Swagger
Swagger 提供使用者友好的介面來互動測試此 API。 您可以使用它发送测试请求并接收响应,而无需编写代码,使其成为开发者的绝佳工具。
使用 Swagger 編輯文本的步驟
存取 Swagger UI:
如果你的 API 伺服器在本地運行,可以在網頁瀏覽器中導航至 http://localhost:8080/swagger/index.html 來訪問 Swagger。
定位 API:
尋找[發布]/v1/document-services/pdfs/encrypt API,對應於加密/添加密碼及權限。
輸入參數:
提供 API 所需的參數。 您可以上傳範例 PDF 文件並指定所需的權限。
上傳 PDF 檔案:
在請求正文中,上傳作為 pdf_file 的 PDF 文件,並定義必要的權限,比如允許或限制列印、填寫表單和內容提取。
執行請求:
設定所有參數後,點擊「執行」以發送請求。回應將返回設有指定安全設定的加密PDF。
檢查輸出 PDF:
輸入「password」以查看 PDF 內容。
了解輸入參數
該 API 需要特定參數來加密 PDF 並指派權限。 以下是必須參數和可選參數的詳細說明:
必填參數
名稱 | 數據類型 | 描述 |
---|---|---|
pdf_file | 應用程式/pdf | 您要加密的 PDF 文件。 |
允許提取內容 | 布林 | 指示是否允許內容提取。 |
允許填寫表單 | 布林 | 指明是否允許填寫表單。 |
允許註釋 | 布林 | 指示是否允許註釋。 |
允許列印 | 布林 | 指示是否允許列印。 |
允許修改 | 布林 | 指出是否允許修改。 |
new_owner_password | 字串 | 新的 PDF 擁有者密碼,授予完整的存取權限以及更改權限的能力。 |
可選參數
名稱 | 數據類型 | 描述 |
---|---|---|
使用者密碼 | 字串 | 如果 PDF 設有用戶密碼以授予讀取權限,則需要當前的用戶密碼。 |
擁有者密碼 | 字串 | 如果 PDF 設有擁有者密碼以授予完全訪問權限,則需要當前擁有者密碼。 |
new_user_password | 用戶新密碼供讀取訪問。 | |
save_as_pdfa | 布林 | 將 PDF 儲存為符合 PDF/A-3 規範。 |
保存為PDF/UA | 布林 | 將 PDF 儲存為符合 PDF/UA 標準。 |
作者 | 字串 | 設置 PDF 中的元資料 Author 屬性。 |
標題 | 字串 | 設置 PDF 元數據標題屬性。 |
主旨 | 字串 | 設定 PDF 元數據主題屬性。 |
API整合:Python範例
一旦熟悉了輸入參數,就可以使用 Python 或任何其他偏好的語言調用 API。 以下是如何使用 Python 整合此 API 的範例。
import requests
url = 'http://localhost:8080/v1/document-services/pdfs/encrypt'
headers = {
'accept': '*/*',
'author': 'IronSoftware',
'title': 'ENCRYPTION DEMO 2024',
'subject': 'DEMO EXAMPLE'
}
files = {
'pdf_file': ('sample.pdf', open('sample.pdf', 'rb'), 'application/pdf')
}
data = {
'allow_extracting_content': 'true',
'allow_form_filling': 'true',
'allow_annotations': 'false',
'allow_printing': 'false',
'allow_modifications': 'true',
'new_owner_password': 'password',
'new_user_password': 'password',
'save_as_pdfa': 'false',
'save_as_pdfua': 'false'
}
response = requests.post(url, headers=headers, files=files, data=data)
# Save the encrypted PDF
with open('sample.pdf', 'wb') as f:
f.write(response.content)
print('PDF encrypted successfully.')
步驟說明:
- 加載 PDF:要加密的 PDF 文件從本地文件系統載入。
- 設置加密參數:定義許可權,如允許列印、填寫表單和內容提取,並設置新密碼。
- 呼叫 API: The[發布]調用加密/添加密碼和權限 API,傳遞必要的參數。
保存結果:加密的 PDF 被保存為新文件。
PDF 檔案已加密,如下所示。 輸入「password」以查看 PDF 內容。