PDFファイルへの暗号化・パスワード設定および権限の付与方法 in C

This article was translated from English: Does it need improvement?
Translated
View the article in English

機密文書を不正アクセスや改ざんから保護するためには、PDFファイルにパスワードや特定のアクセス権限を設定することが不可欠です。 IronSecure Docの[POST] Encrypt/Add Password & Permissions APIは、ユーザーパスワードおよび所有者パスワードでPDFファイルを暗号化し、PRINT、フォーム入力、注釈などの権限を設定するための効率的な方法を提供します。 このAPIは、PDFが完全に保護され、アクセスが制御されることを保証するため、法律文書、財務文書、または個人文書に最適です。

IronSecureDoc をプルして起動する

IronSecureDocをまだ実行していない場合は、以下のリンクからセットアップを行ってください:

ローカルでホストするクラウドへのデプロイ

[POST] 暗号化/パスワードおよび権限の追加 API

[POST] 暗号化/パスワード設定および権限設定 API を使用すると、PDF 文書をパスワードで暗号化し、各種操作に対する具体的な権限を設定することで、セキュリティ層を追加することができます。 読み取りアクセス権の付与、フォームへの自動入力、印刷の無効化など、このAPIを使用すれば、PDFファイルへのアクセスや変更方法を細かく制御できます。

Swagger

Swaggerは、このAPIを対話形式でテストするための使いやすいインターフェースを提供しています。 これを使えば、コードを書かずにテストリクエストを送信し、レスポンスを受け取ることができるため、開発者にとって非常に便利なツールです。

Swagger を使用してテキストを編集する手順

  1. Swagger UI にアクセスする:

APIサーバーがローカルで実行されている場合は、Webブラウザで http://localhost:8080/swagger/index.html にアクセスすることでSwaggerを利用できます。

Swagger ドキュメント

  1. APIの場所を確認する:

[POST] /v1/document-services/pdfs/encrypt API(暗号化/パスワードおよび権限の追加に対応)を検索してください。

テキストを伏せ字にする

  1. 入力パラメータ:

APIに必要なパラメータを指定してください。 サンプルPDFファイルをアップロードし、希望するアクセス権限を指定することができます。

  1. PDFファイルのアップロード:

リクエスト本文には、PDFファイルをpdf_fileとしてアップロードし、PRINT、フォーム入力、コンテンツ抽出の許可または制限など、必要な権限を定義してください。

  1. リクエストの実行:

すべてのパラメータを設定したら、"実行"をクリックしてリクエストを送信してください。レスポンスとして、指定されたセキュリティ設定が適用された暗号化されたPDFが返されます。

  1. 出力PDFの確認:

PDFの内容を表示するには、"password"と入力してください。


入力パラメータの理解

このAPIでは、PDFの暗号化および権限の割り当てを行うために特定のパラメータが必要です。 以下に、必須パラメータとオプションパラメータの内訳を示します:

必須パラメータ

名称データ型説明
pdf_fileapplication/pdf暗号化したいPDFファイル。
allow_extracting_contentbooleanコンテンツの抽出が許可されているかどうかを明記してください。
allow_form_fillingbooleanフォームへの入力が可能かどうかを明記してください。
allow_annotationsboolean注釈の記載可否を明記してください。
allow_printingboolean印刷が可能かどうかを明記してください。
allow_modificationsboolean修正が可能かどうかを明記してください。
new_owner_passwordstringPDFの新しい所有者パスワード。これを入力すると、完全なアクセス権と権限の変更が可能になります。

オプションのパラメータ

名称データ型説明
user_passwordstringPDF/Aに読み取りアクセス権を付与するためのユーザーパスワードが設定されている場合、そのパスワードが必要です。
owner_passwordstringPDF/Aに完全なアクセス権を付与するための所有者パスワードが設定されている場合、そのパスワードが必要です。
new_user_passwordstring読み取りアクセス用の新規ユーザーパスワード。
save_as_pdfabooleanPDFをPDF/A-3準拠の形式で保存してください。
save_as_pdfuabooleanPDFをPDF/UA準拠として保存してください。
著者stringPDFメタデータの"作成者"プロパティを設定します。
タイトルstringPDFメタデータのTitleプロパティを設定します。
件名stringPDF メタデータの Subject プロパティを設定します。

API 統合:Python の例

入力パラメータを理解したら、Pythonやその他の任意の言語を使用してAPIを呼び出すことができます。 以下は、Pythonを使用してこのAPIを統合する方法の例です。

import requests

# Endpoint URL
url = 'http://localhost:8080/v1/document-services/pdfs/encrypt'

# Headers with metadata information
headers = {
    'accept': '*/*',
    'author': 'Iron Software',
    'title': 'ENCRYPTION DEMO 2024',
    'subject': 'DEMO EXAMPLE'
}

# Files to be sent in the request
files = {
    'pdf_file': ('sample.pdf', open('sample.pdf', 'rb'), 'application/pdf')
}

# Parameters for encryption and permissions
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'
}

# Send POST request with parameters
response = requests.post(url, headers=headers, files=files, data=data)

# Save the encrypted PDF to file system
with open('sample_encrypted.pdf', 'wb') as f:
    f.write(response.co/ntent)

print('PDF encrypted successfully.')
import requests

# Endpoint URL
url = 'http://localhost:8080/v1/document-services/pdfs/encrypt'

# Headers with metadata information
headers = {
    'accept': '*/*',
    'author': 'Iron Software',
    'title': 'ENCRYPTION DEMO 2024',
    'subject': 'DEMO EXAMPLE'
}

# Files to be sent in the request
files = {
    'pdf_file': ('sample.pdf', open('sample.pdf', 'rb'), 'application/pdf')
}

# Parameters for encryption and permissions
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'
}

# Send POST request with parameters
response = requests.post(url, headers=headers, files=files, data=data)

# Save the encrypted PDF to file system
with open('sample_encrypted.pdf', 'wb') as f:
    f.write(response.co/ntent)

print('PDF encrypted successfully.')
PYTHON

手順の説明:

  • PDFの読み込み: 暗号化するPDFファイルをローカルファイルシステムから読み込みます。
  • 暗号化パラメータの設定: PRINT、フォーム入力、コンテンツ抽出の許可といった権限の定義や、新しいパスワードの設定を行います。
  • APIの呼び出し: [POST] 暗号化/パスワードおよび権限の追加 API を呼び出し、必要なパラメータを渡します。
  • 結果の保存: 暗号化されたPDFは新しいファイルとして保存されます。

PDFファイルは、以下に示すように暗号化されています。 PDFの内容を表示するには、"password"と入力してください。

よくある質問

機密情報を保護するためにPDFファイルを暗号化するにはどうすればよいですか?

PDFファイルを暗号化するには、IronSecureDoc APIを使用して、ユーザーパスワードとオーナーパスワードの両方を設定できます。これらのパスワードは、印刷やフォーム入力などのアクセスと権限を制御するのに役立ち、ドキュメントのセキュリティを確保します。

IronSecureDoc APIを使用したPDF暗号化にはどのような手順が含まれていますか?

まず、IronSecureDoc Dockerイメージを取得し、ホスティング環境に応じてセットアップします。次に、APIを使用して暗号化のパラメータを指定し(パスワードや権限の設定など)、APIコールを実行して保護されたPDFを生成します。

コードを書かずにIronSecureDoc APIをテストするにはどうすればよいですか?

Swaggerを使用してIronSecureDoc APIをテストできます。Swagger UIにアクセスし、関連するAPIエンドポイントを見つけ、必要なパラメータを入力してリクエストを実行し、レスポンスを確認してAPIが正しく機能していることを確認してください。

PDFセキュリティにおけるユーザーパスワードとオーナーパスワードとは何ですか?

PDFセキュリティでは、ユーザーパスワードはドキュメントの読み取りを許可し、オーナーパスワードは権限の変更を含む完全なアクセスを許可します。IronSecureDocを使用すると、両方の種類のパスワードを設定してドキュメントのセキュリティを強化できます。

IronSecureDocを使ってPDFをPDF/A準拠に設定することはできますか?

はい、IronSecureDoc APIには、暗号化されたPDFを長期保存のための電子文書の標準であるPDF/A-3準拠として保存するためのパラメータが含まれています。

IronSecureDoc APIで制御できる権限には何がありますか?

IronSecureDoc APIを使用すると、印刷、フォーム入力、コンテンツ抽出、注釈、変更などの権限を制御でき、PDFがセキュリティポリシーに一致した形式で使用されるようにします。

IronSecureDoc APIをPythonアプリケーションと統合するにはどうすればよいですか?

PythonとIronSecureDoc APIを統合するには、requestsライブラリを利用してAPIエンドポイントにPOSTリクエストを送信します。必要なヘッダー、パラメータ、ファイルデータをリクエストに含めてPDFファイルを暗号化し管理します。

IronSecureDocを使用してPDFを暗号化するために必要なパラメータは何ですか?

必要なパラメータには、暗号化するPDFファイル、ユーザーとオーナーのパスワード、および印刷や編集などのアクションに対する権限が含まれます。これらのパラメータは、ドキュメントのセキュリティと使用の管理を保証します。

IronSecureDocを使用した暗号化中にPDFのメタデータを変更することは可能ですか?

はい、著者、タイトル、主題などのPDFメタデータは、IronSecureDoc APIのオプションパラメータを使って変更でき、暗号化プロセス中にドキュメント情報をカスタマイズすることが可能です。

IronSecureDocをローカルに実行するためのホスティング要件は何ですか?

IronSecureDocは、Windows、Mac、またはLinuxシステムでローカルにホスティングできます。サービスの正しいインストールと運用を確保するために、オペレーティングシステムに特化したセットアップチュートリアルに従ってください。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
バージョン: 2024.10 just released
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか?
サンプルを実行する PDF が暗号化されるのを見る。