THotPDF.AnalyzeLoadedSignatureRevisions メソッド
選択された署名の後のすべてのインクリメンタルリビジョンを分類し、DocMDP と FieldMDP に対して集約された変更を評価します
宣言
function AnalyzeLoadedSignatureRevisions(
SigIndex: Integer;
Source: TStream;
out Analysis: THPDFSignatureRevisionAnalysis
): boolean; overload;
function AnalyzeLoadedSignatureRevisions(
SigIndex: Integer;
out Analysis: THPDFSignatureRevisionAnalysis
): boolean; overload;
ユニット
HPDFDoc
パラメータ
| 名前 | 目的 |
|---|---|
SigIndex | 読み込んだ署名フィールドのゼロベースインデックス |
Source | 読み込んだ PDF の正確なバイトを含む呼び出し側所有のストリーム |
Analysis | リビジョン、オブジェクト、フィールド、権限、コンプライアンス、および診断の詳細を受け取ります |
変更レベル
THPDFRevisionChangeKinds は、長期検証のメンテナンス・フォーム入力・署名・注釈の作成/削除/変更・埋め込みファイルの作成/削除/変更・ページテンプレートのインスタンス化・未知の変更をそれぞれ個別に記録します
この種類の集合は、単一の順序付き変更レベルでは表現できない操作の詳細を保持し、UR/UR3 権限の照合を駆動します
戻り値
署名バイト範囲とリビジョンチェーンが分析された場合に True を返し、それ以外の場合は False を返して理由を Analysis.Issue で報告します
結果の詳細
THPDFRevisionModificationLevel は意味的な変更を制約の弱い順に並べます
| 値 | 意味 |
|---|---|
rmlNone | 署名後のオブジェクト変更なし |
rmlLongTermValidation | DSS・VRI・証明書・失効情報・拡張・ドキュメントタイムスタンプのメンテナンス |
rmlFormFillAndSign | フォームの値・ウィジェット外観・署名構造 |
rmlAnnotations | 注釈オブジェクト、またはページの注釈リンケージ |
rmlOther | 未知・読めない・解放済み、その他許可されないオブジェクト |
結果の詳細
THPDFSignatureRevisionAnalysis は THPDFSignatureRevisionChange レコードの THPDFSignatureRevisionChangeArray を含みます
SignedRevisionLength・TotalRevisionCount・SignedRevisionIndexは、時系列リビジョンチェーンの中の署名されたスナップショットを特定しますRevisionsは、それ以降の各 xref オフセット・意味レベル・変更種類の集合・変更および解放されたオブジェクト番号・変更されたフィールド名・保守的な分類の問題を報告しますPermissionsは、最新オブジェクトグラフで再定義された可能性のあるポリシーではなく、正確な署名リビジョンから再構成した完全な変換情報を含みますDocMDPCompliant・FieldMDPCompliant・URCompliant・IdentityCompliantが独立した判断を報告し、TransformCompliantがすべての変換メソッドを構造的な有効性と組み合わせます- 1 つの判断が必要な呼び出し側にとって、
PolicyCompliantが最終的な fail-closed の結果であり続けます
使用上の注意
- ファイルバックエンドのオーバーロードは
LoadFromFileが使用するソースファイルを開きます。LoadFromStreamの後はストリームオーバーロードを使用してください - メソッドが返る前にストリーム位置が復元されます
- 従来形式の xref テーブル・xref ストリーム・ハイブリッドリファレンス・インクリメンタルな
/Prevチェーン・圧縮されたオブジェクトストリームメンバーに対応します - UR3 は必須のバイトレンジを通じて参加します。非推奨の旧式 UR 署名には署名リビジョン境界がないため、このメソッドは、時代遅れのオブジェクトダイジェストアルゴリズムを試みる代わりに、無効または存在しない
/ByteRangeを報告します - 解放された注釈と埋め込みファイルは、以前のオブジェクト本体からの削除セマンティクスを保持します。未知または読めないオブジェクトは
rmlOtherのままなので、ポリシーチェックは安全に失敗します - このメソッドはリビジョンの意味と権限を評価しますが、暗号署名の検証の代わりにはなりません
- SaveIncrementalUpdateAuthenticated は、この分析を署名の認証と原子的な公開と組み合わせます