Skip to main content
Interwork Corporation
IDR Solutions Product Support Portal
PDF開発用語集 モードの切替 ダーク/ライト/自動 モードの切替 ダーク/ライト/自動 モードの切替 ダーク/ライト/自動

SecurityHandler

SecurityHandlerは、Apache PDFBoxライブラリの中核となるクラスで、暗号化、アクセス権限、デジタル署名を含むドキュメントレベルのセキュリティ機能を管理します。

キーワード: securityhandler, SecurityHandler

概要

SecurityHandlerは、Apache PDFBoxライブラリの中核となるクラスで、暗号化、アクセス権限、デジタル署名を含むドキュメントレベルのセキュリティ機能を管理します。PDF仕様 ( Citation: N.A., (N.A.). (). Document management — Portable document format — Part 2: PDF 2.0 International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) で定義されているセキュリティメカニズムを実装し、ユーザーがPDFドキュメントをどのように操作できるかを制御します。SecurityHandlerは、PDFBoxアプリケーションとドキュメント保護に必要な暗号化処理の間のインターフェースとして機能します。

定義

SecurityHandlerは、Apache PDFBoxにおいてPDFセキュリティ機能を実装するための基盤を提供する抽象クラスです。このクラスは、主に2つのセキュリティ領域を扱います:標準的な暗号化ベースの権限(印刷、コピー、編集などの操作を制御)と、デジタル署名を含む公開鍵セキュリティです。このクラスは、PDFドキュメントのセキュリティ辞書と、アクセス制御を実施する暗号化アルゴリズムの間の橋渡し役として機能します。

汎用的な暗号化ライブラリとは異なり、SecurityHandlerはPDFドキュメント構造と連携するように特別に設計されており、PDF仕様で定義されているセキュリティハンドラタイプを実装しています。SecurityHandlerには、パスワードベースの暗号化を行うStandardSecurityHandlerや証明書ベースのセキュリティを扱うPublicKeySecurityHandlerなど、異なるセキュリティスキームに対応する具象実装が存在します。

重要性

PDFBoxを使用する開発者にとって、SecurityHandlerは機密文書を保護したり、ドキュメントの真正性を検証したりする必要があるアプリケーションを構築する際に不可欠です。SecurityHandlerを理解することで、開発者はドキュメント権限のプログラムによる設定(印刷、編集、コンテンツ抽出の制限)、パスワード保護の適用、デジタル署名ワークフローの実装が可能になります。

セキュリティとアクセシビリティは、PDF開発においてしばしば交差する領域です。SecurityHandlerはドキュメントアクセスを制限できますが、開発者はPDF/UA ( Citation: N.A., (N.A.). (). Document management applications — Electronic document file format enhancement for accessibility — Part 1: Use of ISO 32000-1 (PDF/UA-1) International Organization for Standardization Retrieved from https://www.iso.org/standard/64599.html ) などの標準で要求されるアクセシビリティ機能が誤ってブロックされないよう注意する必要があります。適切に設定されたセキュリティハンドラは、適切なセキュリティ制御を維持しながら、支援技術がドキュメントコンテンツにアクセスできるようにします。

仕組み

SecurityHandlerは、ドキュメントアクセス要求を傍受し、操作の実行を許可する前に適切なセキュリティポリシーを適用することで動作します。PDFドキュメントが暗号化される際、SecurityHandlerは以下の処理を行います:

  1. ドキュメントコンテンツの暗号化 - PDF仕様で指定されたアルゴリズム(通常はAESまたはRC4)を使用
  2. 暗号化パラメータの保存 - セキュリティハンドラのタイプとバージョンを含む、ドキュメントのセキュリティ辞書への格納
  3. 暗号化キーの管理 - ユーザーパスワード、所有者パスワード、または公開鍵証明書から派生
  4. 権限フラグの適用 - 印刷、変更、コンテンツ抽出などのドキュメント操作を制御

デジタル署名については、SecurityHandlerは署名辞書と連携して、暗号署名を検証し、ドキュメントの整合性を確認します。開発者がPDFBoxのメソッドを呼び出して権限を設定したり署名を追加したりすると、適切なSecurityHandler実装がこれらの高レベル操作を、 ( Citation: N.A., (N.A.). (). Document management — Portable document format — Part 2: PDF 2.0 International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) で要求される低レベルの暗号化処理とPDF構造の変更に変換します。

開発者は通常、PDDocumentAccessPermissionなどのより高レベルなPDFBoxクラスを通じてSecurityHandlerとやり取りしますが、セキュリティ問題のトラブルシューティングやカスタムセキュリティスキームの実装には、基盤となるSecurityHandlerメカニズムの理解が不可欠です。

関連用語

  • Encryption Dictionary(暗号化辞書) – 暗号化パラメータを保存し、セキュリティハンドラを参照するPDF構造
  • Access Permissions(アクセス権限) – SecurityHandlerによって制御される、許可されたドキュメント操作を決定するフラグ
  • Digital Signature(デジタル署名) – ドキュメントの真正性と整合性を検証するためにSecurityHandlerが管理する暗号化メカニズム
  • PDDocument – ドキュメントレベルのセキュリティを管理するためにSecurityHandlerを使用する、Apache PDFBoxのメインクラス
  • Standard Security Handler(標準セキュリティハンドラ) – パスワードベースのPDF暗号化のための特定のSecurityHandler実装

出典

(N.A.) (2020)
(N.A.). (). Document management — Portable document format — Part 2: PDF 2.0 International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html
(N.A.) (2014)
(N.A.). (). Document management applications — Electronic document file format enhancement for accessibility — Part 1: Use of ISO 32000-1 (PDF/UA-1) International Organization for Standardization Retrieved from https://www.iso.org/standard/64599.html