THotPDF.SaveIncrementalUpdateAuthenticated Method

Authentifie les politiques de révisions signées, rejette les changements interdits et publie atomiquement une mise à jour incrémentielle

Déclarations

function SaveIncrementalUpdateAuthenticated(
  const TargetFile: TFileName;
  const Options: THPDFAuthenticatedIncrementalUpdateOptions;
  out Info: THPDFAuthenticatedIncrementalUpdateInfo
): Boolean; overload;

function SaveIncrementalUpdateAuthenticated(
  const TargetFile: TFileName;
  out Info: THPDFAuthenticatedIncrementalUpdateInfo
): Boolean; overload;

Workflow

  1. Écrit la révision incrémentielle en attente dans un candidat unique du répertoire cible
  2. Charge chaque politique depuis la révision exacte protégée par sa plage d’octets de signature
  3. Authentifie chaque signature CMS porteuse de politique et valide optionnellement son chemin de certificats
  4. Classifie chaque révision ultérieure et applique les décisions DocMDP, FieldMDP, UR ou UR3, Identity et transformations inconnues
  5. Publie le candidat accepté avec un remplacement atomique en écriture directe

Un rejet supprime le candidat et laisse une cible existante identique octet par octet

Options

MembreRôle
AuthenticationipaCryptographic exige une signature CMS de plage d’octets valide, tandis que ipaTrustedCertificate exige en plus cvsTrusted issu de la validation du chemin de certificats et des révocations
RequireSignaturePolicyRejette les documents sans politique de transformation authentifiée lorsque True, qui est la valeur par défaut
CertificateValidationAncres de confiance, intermédiaires, preuves de révocation hors ligne, temps de validation, finalité et politique d’algorithme utilisés par le mode certificat de confiance

Détails du résultat

THPDFAuthenticatedIncrementalUpdateInfo rapporte l’état final, l’index de la signature en échec, les états de signature et de certificat, le nombre total de signatures, le nombre de politiques authentifiées et un problème de diagnostic

Les états importants incluent aiusAccepted, aiusNoSignaturePolicy, aiusSignatureInvalid, aiusCertificateUntrusted, aiusPolicyMalformed, aiusPolicyViolation et aiusCommitFailed

Utilisation

var
  Info: THPDFAuthenticatedIncrementalUpdateInfo;
begin
  PDF.BeginIncrementalUpdate('certified.pdf');
  PDF.SetLoadedFormFieldValueByName('CustomerName', 'Ada');
  if not PDF.SaveIncrementalUpdateAuthenticated('updated.pdf', Info) then
    raise Exception.Create(String(Info.Issue));
end;

Périmètre de sécurité

API associées