EnumCertificates

Sicherheit und Signaturen

Beschreibung

Listet jedes Zertifikat in einem Windows-Systemzertifikatsspeicher auf und gibt dessen Metadaten zurück; jeder Eintrag enthält die einfachen Anzeigenamen für Subject und Issuer, die Seriennummer (Großbuchstaben-Hexadezimal, MSB zuerst), das Gültigkeitsfenster NotBefore/NotAfter, ein HasPrivateKey-Flag (erforderlich für die Signatur), ein Qualified-Flag (true, wenn das Zertifikat die eIDAS-Erweiterung QCStatements, OID 0.4.0.1862.1.7, enthält, die über einen integrierten DER-Decoder erkannt wird) und ein CertHandle (den rohen PCCERT_CONTEXT)

Das CertHandle ist nur für die Dauer des Aufrufs gültig; Aufrufer, die ein Handle für eine spätere Signierung behalten möchten, müssen es über CertDuplicateCertificateContext duplizieren und dann an SetSignProcessCertFromStoreByHandle übergeben

Syntax

Delphi

Function TPDFlib.EnumCertificates(Const StoreName: WideString; UseMachineStore: Boolean; Var Certs: Array Of TPDFlibCertificateInfo): Integer;

Parameter

StoreNameDer Name des Windows-Systemzertifikatspeichers ("MY", "Root", "CA", ...)
UseMachineStoreTrue für CERT_SYSTEM_STORE_LOCAL_MACHINE, False für CERT_SYSTEM_STORE_CURRENT_USER
CertsVom Aufrufer zugewiesenes Array, das bis zu seiner Länge mit Zertifikatsmetadaten gefüllt ist

Rückgabewerte

>= 0Die Anzahl der in Certs geschriebenen Zertifikate (kann kleiner als die Speichergröße sein, wenn das Array zu klein ist)