THotPDF.SaveIncrementalUpdateAuthenticated Method

İmzalı revizyon politikalarını doğrular, yasaklanan değişiklikleri reddeder ve artımlı güncellemeyi atomik olarak yayımlar

Bildirimler

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

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

İş akışı

  1. Bekleyen artımlı revizyonu, hedef dizindeki benzersiz bir candidate dosyaya yazar
  2. Her politikayı, imza byte aralığıyla korunan tam revizyondan yükler
  3. Politika taşıyan her CMS imzasını authenticate eder ve isteğe bağlı olarak sertifika yolunu doğrular
  4. Sonraki her revizyonu sınıflandırır ve DocMDP, FieldMDP, UR veya UR3, Identity ile bilinmeyen transform kararlarını uygular
  5. Kabul edilen candidate dosyasını write-through atomik değiştirmeyle yayımlar

Red durumunda candidate silinir ve mevcut hedef dosya bayt bayt aynı kalır

Seçenekler

ÜyeAmaç
AuthenticationipaCryptographic geçerli bir CMS byte-range imzası gerektirir; ipaTrustedCertificate buna ek olarak sertifika yolu ve revocation doğrulamasından cvsTrusted sonucunu da gerektirir
RequireSignaturePolicyVarsayılan olan True değerindeyken authenticate edilmiş bir transform politikası bulunmayan belgeleri reddeder
CertificateValidationGüvenilen sertifika modunun kullandığı trust anchor'lar, ara sertifikalar, çevrimdışı revocation kanıtı, doğrulama zamanı, amaç ve algoritma politikası

Sonuç ayrıntıları

THPDFAuthenticatedIncrementalUpdateInfo; nihai durumu, hata veren imza indeksini, imza ve sertifika durumunu, toplam imza sayısını, authenticate edilmiş politika sayısını ve bir tanı sorununu bildirir

Önemli durumlar arasında aiusAccepted, aiusNoSignaturePolicy, aiusSignatureInvalid, aiusCertificateUntrusted, aiusPolicyMalformed, aiusPolicyViolation ve aiusCommitFailed yer alır

Kullanım

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;

Güvenlik sınırı

İlgili API'ler