THPDFCertificateValidationOptions Record
Konfiguriert Trust Anchors, Offline-Widerrufsnachweise, Policy-Constraints und Algorithmusgrenzen für die Zertifikatspfadvalidierung
Deklaration
THPDFCertificateValidationOptions= record
TrustAnchors: THPDFDERArray;
IntermediateCertificates: THPDFDERArray;
OCSPResponses: THPDFDERArray;
CRLs: THPDFDERArray;
DeltaCRLs: THPDFDERArray;
CRLIssuerCertificates: THPDFDERArray;
OCSPResponseSources: THPDFValidationEvidenceSourceArray;
CRLSources: THPDFValidationEvidenceSourceArray;
DeltaCRLSources: THPDFValidationEvidenceSourceArray;
RevocationMode: THPDFRevocationMode;
ValidationTime: TDateTime;
MaxPathLength: Integer;
OCSPNoncePolicy: THPDFOCSPNoncePolicy;
ExpectedOCSPNonce: TBytes;
OCSPMaxAgeDays: Double;
OCSPAllowedClockSkewMinutes: Integer;
RequireOCSPNextUpdate: boolean;
AllowDelegatedOCSPResponders: boolean;
RequireOCSPNoCheckForDelegated: boolean;
CRLMaxAgeDays: Double;
CRLAllowedClockSkewMinutes: Integer;
RequireCRLNextUpdate: boolean;
AllowIndirectCRLs: boolean;
RequireDeltaCRLWhenAdvertised: boolean;
TrustPurpose: THPDFCertificateTrustPurpose;
CustomTrustPurposeOID: AnsiString;
InitialPolicySet: THPDFOIDArray;
RequireExplicitCertificatePolicy: boolean;
InhibitCertificatePolicyMapping: boolean;
InhibitAnyCertificatePolicy: boolean;
AlgorithmPolicy: THPDFCertificateAlgorithmPolicy;
// v2.738.0 online chain building: when the path cannot close with
// the supplied pool, fetch the missing intermediates through the
// AIA caIssuers URLs of the leaf-most unmatched certificate before
// failing with cvsPathBuildingFailed (transport stays caller-side)
FetchMissingIntermediates: boolean;
MaxFetchedIntermediates: Integer;
class function Default: THPDFCertificateValidationOptions; static;
end;
Unit
HPDFSignVerify
Felder
| Feld | Zweck |
|---|---|
TrustAnchors | DER-kodierte Trust-Anchor-Zertifikate, die den Pfad abschließen dürfen |
IntermediateCertificates | Zusätzliche nicht vertrauenswürdige Zertifikate, die der Builder nutzen darf, wenn der CMS-Pool unvollständig ist |
OCSPResponses / CRLs / DeltaCRLs | Offline-Pools aus OCSP-Antworten, Basis-CRLs und Delta-CRLs |
CRLIssuerCertificates | Zertifikate zur Prüfung von CRL-Signator-Signaturen |
OCSPResponseSources / CRLSources / DeltaCRLSources | Je Pooleintrag aufgezeichneter Nachweisquellen-Tag, ausgewiesen in den Validierungs-Infos |
RevocationMode | Wählt das Widerrufsverhalten rvmNone, rvmBestEffort oder rvmRequire |
ValidationTime | Zeit, zu der Gültigkeits- und Frische-Prüfungen bewertet werden |
MaxPathLength | Maximale Zertifikatzahl zwischen Blatt und Trust Anchor; Default setzt 12 |
OCSPNoncePolicy | Ob OCSP-Noncen gefordert, bei Vorhandensein abgeglichen oder ignoriert werden; Default gleicht bei Vorhandensein ab |
ExpectedOCSPNonce | Genaue Nonce-Bytes, die gefordert werden, wenn die Policy eine verlangt |
OCSPMaxAgeDays / CRLMaxAgeDays | Maximal akzeptiertes Alter von OCSP-Antworten und CRLs; Default setzt 7 und 30 Tage |
OCSPAllowedClockSkewMinutes / CRLAllowedClockSkewMinutes | Uhrentoleranz für Nachweis-Zeitstempel; Default setzt je 5 Minuten |
RequireOCSPNextUpdate / RequireCRLNextUpdate | Nachweise ohne Next-Update-Feld zurückweisen |
AllowDelegatedOCSPResponders | Antworten delegierter Responder akzeptieren; Default erlaubt sie |
RequireOCSPNoCheckForDelegated | Die OCSPNoCheck-Erweiterung auf Zertifikaten delegierter Responder fordern |
AllowIndirectCRLs | CRLs eines indirekten CRL-Signators akzeptieren; Default erlaubt sie |
RequireDeltaCRLWhenAdvertised | Scheitern, wenn ein Delta-CRL-Zeiger gemeldet wird, aber keine Delta-CRL geliefert wurde |
TrustPurpose / CustomTrustPurposeOID | Geforderter Zertifikatszweck für den Trust Anchor; Default akzeptiert jeden Zweck |
InitialPolicySet | Certificate-Policy-OIDs, die der validierte Pfad erfüllen muss |
RequireExplicitCertificatePolicy | Mindestens eine explizite Certificate Policy im Pfad fordern |
InhibitCertificatePolicyMapping | Die Verarbeitung von Certificate-Policy-Mappings deaktivieren |
InhibitAnyCertificatePolicy | Den anyPolicy-Qualifier aus der Policy-Verarbeitung ausschließen |
AlgorithmPolicy | Schlüsselgrößen- und Algorithmusgrenzen für jedes Zertifikat und jede Signatur im Pfad |
FetchMissingIntermediates | Fehlende Intermediates über AIA-caIssuers-URLs holen, bevor mit cvsPathBuildingFailed abgebrochen wird; der Transport bleibt caller-seitig |
MaxFetchedIntermediates | Obergrenze, wie viele Intermediates eine Validierung über AIA holen darf |
Default | Klassenfunktion, die die oben zusammengefasste eingebaute Konfiguration zurückgibt |
Verwendungshinweise
- Beginnen Sie mit
THPDFCertificateValidationOptions.Defaultund überschreiben Sie nur, was Ihre Policy braucht, damit Frische-Fenster und Trust-Zweck den Library-Standards entsprechen - Die Library öffnet nie Sockets: Liefern Sie Nachweise über die Pools oder verwenden Sie die Online-Validierungsvariante mit caller-seitigem Transport, wenn
FetchMissingIntermediatesholen muss - Die Quell-Arrays entsprechen eins zu eins den Nachweis-Pools, sodass Berichte jedes Widerrufsurteil seiner Herkunft zuordnen können