EnumCertificates

Seguridad y firmas

Descripción

Enumera todos los certificados de un almacén de certificados del sistema Windows y devuelve sus metadatos. Cada entrada incluye los nombres de visualización simples de Subject e Issuer, el número de serie (hexadecimal en mayúsculas, MSB primero), el intervalo de validez NotBefore/NotAfter, una marca HasPrivateKey (necesaria para firmar), una marca Qualified (verdadera cuando el certificado lleva la extensión eIDAS QCStatements, OID 0.4.0.1862.1.7, detectada mediante un decodificador DER integrado) y un CertHandle (el PCCERT_CONTEXT sin procesar)

El CertHandle es válido solo durante la llamada; quienes deseen conservar un identificador para una firma posterior deben duplicarlo mediante CertDuplicateCertificateContext y luego pasarlo a SetSignProcessCertFromStoreByHandle

Sintaxis

Delphi

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

Parámetros

StoreNameEl nombre del almacén de sistema de Windows ("MY", "Root", "CA", ...)
UseMachineStoreTrue para CERT_SYSTEM_STORE_LOCAL_MACHINE, False para CERT_SYSTEM_STORE_CURRENT_USER
CertsMatriz asignada por quien llama y rellenada con metadatos de certificado hasta su longitud

Valores devueltos

>= 0El número de certificados escritos en Certs (puede ser menor que el tamaño del almacén si la matriz es demasiado pequeña)