THotPDF.SaveIncrementalUpdateAuthenticated Method
Autentica políticas de revisão assinadas, rejeita alterações proibidas e publica atomicamente uma atualização incremental
Declarações
function SaveIncrementalUpdateAuthenticated(
const TargetFile: TFileName;
const Options: THPDFAuthenticatedIncrementalUpdateOptions;
out Info: THPDFAuthenticatedIncrementalUpdateInfo
): Boolean; overload;
function SaveIncrementalUpdateAuthenticated(
const TargetFile: TFileName;
out Info: THPDFAuthenticatedIncrementalUpdateInfo
): Boolean; overload;
Fluxo de trabalho
- Grava a revisão incremental pendente em um candidato exclusivo no diretório de destino
- Carrega cada política da revisão exata protegida por sua faixa de bytes de assinatura
- Autentica cada assinatura CMS com política e opcionalmente valida seu caminho de certificado
- Classifica cada revisão posterior e aplica as decisões DocMDP, FieldMDP, UR ou UR3, Identity e transformação desconhecida
- Publica o candidato aceito com uma substituição atômica com gravação direta
Uma rejeição exclui o candidato e deixa um destino existente inalterado byte a byte
Opções
| Membro | Finalidade |
|---|---|
Authentication | ipaCryptographic exige uma assinatura CMS válida de faixa de bytes, enquanto ipaTrustedCertificate exige adicionalmente cvsTrusted da validação de caminho de certificado e revogação |
RequireSignaturePolicy | Rejeita documentos sem uma política de transformação autenticada quando True, que é o padrão |
CertificateValidation | Âncoras de confiança, intermediários, evidência de revogação offline, tempo de validação, finalidade e política de algoritmo usados pelo modo de certificado confiável |
Detalhes do resultado
THPDFAuthenticatedIncrementalUpdateInfo relata o status final, o índice da assinatura com falha, o status da assinatura e do certificado, a contagem total de assinaturas, a contagem de políticas autenticadas e um problema de diagnóstico
Status importantes incluem aiusAccepted, aiusNoSignaturePolicy, aiusSignatureInvalid, aiusCertificateUntrusted, aiusPolicyMalformed, aiusPolicyViolation e 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;
Limite de segurança
- Uma política estruturalmente presente nunca se torna autoritativa até que sua assinatura autentique com sucesso
- Os dicionários de política são lidos do instantâneo assinado e vinculados ao objeto de assinatura original, faixa de bytes e valor CMS, impedindo que uma revisão posterior redirecione ou substitua sua própria autoridade
- O modo de certificado confiável é apropriado quando a identidade do signatário importa além da integridade do documento
- O método comum
SaveIncrementalUpdatepermanece disponível para fluxos de trabalho não assinados que não solicitam imposição de política