THotPDF.SaveIncrementalUpdateAuthenticated Method

Autentica las políticas de revisión firmadas, rechaza los cambios prohibidos y publica de forma atómica una actualización incremental

Declaraciones

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

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

Flujo de trabajo

  1. Escribe la revisión incremental pendiente en un candidato único del directorio de destino
  2. Carga cada política de la revisión exacta protegida por su rango de bytes de firma
  3. Autentica cada firma CMS que contiene política y, opcionalmente, valida su ruta de certificado
  4. Clasifica cada revisión posterior y aplica las decisiones DocMDP, FieldMDP, UR o UR3, Identity y de transformación desconocida
  5. Publica el candidato aceptado con un reemplazo atómico de escritura directa

Un rechazo elimina el candidato y deja un destino existente sin cambios byte a byte

Opciones

MiembroPropósito
AuthenticationipaCryptographic requiere una firma CMS de rango de bytes válida, mientras que ipaTrustedCertificate además requiere cvsTrusted de la validación de la ruta del certificado y de la revocación
RequireSignaturePolicyRechaza los documentos sin una política de transformación autenticada cuando es True, que es el valor predeterminado
CertificateValidationAnclas de confianza, intermediarios, evidencia de revocación sin conexión, tiempo de validación, propósito y política de algoritmos usados por el modo de certificado de confianza

Detalles del resultado

THPDFAuthenticatedIncrementalUpdateInfo informa del estado final, el índice de firma fallida, el estado de la firma y del certificado, el número total de firmas, el número de políticas autenticadas y un problema de diagnóstico

Los estados importantes incluyen aiusAccepted, aiusNoSignaturePolicy, aiusSignatureInvalid, aiusCertificateUntrusted, aiusPolicyMalformed, aiusPolicyViolation y aiusCommitFailed

Uso

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;

Límite de seguridad

APIs relacionadas