estructura CERT_CHAIN_POLICY_STATUS (wincrypt.h)
La estructura de CERT_CHAIN_POLICY_STATUS contiene la información de estado de la cadena de certificados devuelta por la función CertVerifyCertificateChainPolicy cuando se validan las cadenas de certificados.
Sintaxis
typedef struct _CERT_CHAIN_POLICY_STATUS {
DWORD cbSize;
DWORD dwError;
LONG lChainIndex;
LONG lElementIndex;
void *pvExtraPolicyStatus;
} CERT_CHAIN_POLICY_STATUS, *PCERT_CHAIN_POLICY_STATUS;
Miembros
cbSize
Tamaño, en bytes, de esta estructura.
dwError
Valor que indica que se encontró un error o una condición no válida durante el proceso de validación. Los valores de este miembro son específicos del tipo de directiva especificado por el valor del parámetro pszPolicyOID de la función CertVerifyCertificateChainPolicy .
Errores de directiva base (CERT_CHAIN_POLICY_BASE)
Valor | Significado |
---|---|
|
No se puede comprobar la firma del certificado. |
|
Se ha revocado el certificado o la firma. |
|
Una cadena de certificación se procesó correctamente, pero finalizó en un certificado raíz que no es de confianza para el proveedor de confianza. |
|
El certificado raíz es un certificado de prueba y la configuración de la directiva no permite certificados de prueba. |
|
No se creó correctamente una cadena de certificados. |
|
El certificado no es válido para el uso solicitado. |
|
Un certificado necesario no está dentro de su período de validez. |
|
El certificado tiene un nombre no válido. El nombre no se incluye en la lista permitida o se excluye explícitamente. |
|
El certificado tiene una directiva no válida. |
|
Las restricciones básicas del certificado no son válidas o faltan. |
|
El certificado se usa para un propósito distinto del propósito especificado por su ENTIDAD de certificación. |
|
Los períodos de validez de la cadena de certificación no anidan correctamente. |
|
La función de revocación no pudo comprobar la revocación del certificado. |
|
La función de revocación no pudo comprobar la revocación debido a que el servidor de revocación estaba sin conexión. |
Errores de directiva de restricciones básicas (CERT_CHAIN_POLICY_BASIC_CONSTRAINTS).
Valor | Significado |
---|---|
|
Las restricciones básicas del certificado no son válidas o faltan. |
Errores de directiva authenticode (CERT_CHAIN_POLICY_AUTHENTICODE y CERT_CHAIN_POLICY_AUTHENTICODE_TS).
Estos errores se agregan a los errores de la directiva base.
Errores de directiva SSL (CERT_CHAIN_POLICY_SSL).
Estos errores se agregan a los errores de la directiva base.
Valor | Significado |
---|---|
|
Una cadena de certificación se procesó correctamente, pero finalizó en un certificado raíz que no es de confianza para el proveedor de confianza. |
|
El nombre CN del certificado no coincide con el valor pasado. |
|
El certificado se usa para un propósito distinto del especificado por su ENTIDAD de certificación. |
|
Un certificado que solo se puede usar como entidad de finalización se usa como entidad de certificación o viceversa. |
Errores de directiva raíz de Microsoft (CERT_CHAIN_POLICY_MICROSOFT_ROOT).
Valor | Significado |
---|---|
|
Una cadena de certificación se procesó correctamente, pero finalizó en un certificado raíz que no es de confianza para el proveedor de confianza. |
Errores de directiva ev.
lChainIndex
Índice que indica la cadena en la que se encontró un error o condición que no es válido. Para obtener más información, vea la sección Comentarios.
lElementIndex
Índice que indica el elemento de una cadena donde se encontró un error o condición que no es válido. Para obtener más información, vea la sección Comentarios.
pvExtraPolicyStatus
Puntero a una estructura. El tipo de estructura viene determinado por el valor del parámetro pszPolicyOID de la función CertVerifyCertificateChainPolicy . Además de los errores dwError , el estado adicional específico del OID de directiva también se puede devolver aquí para proporcionar información adicional sobre el estado de la cadena. Este puntero se puede establecer opcionalmente para que apunte a una estructura de AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS .
Comentarios
Si lChainIndex y lElementIndex se establecen en –1, el error o condición que no es válido se aplica al contexto de cadena completo. Si solo lElementIndex se establece en –1, el error o condición que no es válido se aplica a la cadena indizada por lChainIndex. De lo contrario, el error o condición que no es válido se aplica al elemento certificate en pChainContext-rgpChain>[lChainIndex]->rgpElement[lElementIndex].
Requisitos
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Encabezado | wincrypt.h |