structure CERT_CHAIN_PARA (wincrypt.h)
La structure CERT_CHAIN_PARA établit les critères de recherche et de correspondance à utiliser pour créer une chaîne de certificats.
Syntaxe
typedef struct _CERT_CHAIN_PARA {
DWORD cbSize;
CERT_USAGE_MATCH RequestedUsage;
CERT_USAGE_MATCH RequestedIssuancePolicy;
DWORD dwUrlRetrievalTimeout;
BOOL fCheckRevocationFreshnessTime;
DWORD dwRevocationFreshnessTime;
LPFILETIME pftCacheResync;
PCCERT_STRONG_SIGN_PARA pStrongSignPara;
DWORD dwStrongSignFlags;
} CERT_CHAIN_PARA, *PCERT_CHAIN_PARA;
Membres
cbSize
Taille, en octets, de cette structure.
RequestedUsage
Structure indiquant le type de correspondance nécessaire pour trouver des certificats d’émetteur pour la création d’une chaîne de certificats. La structure pointée vers indique si la logique AND ou OR doit être utilisée dans le processus de correspondance. La structure comprend également un tableau d’OID à mettre en correspondance.
RequestedIssuancePolicy
Structure facultative qui indique le type de correspondance de contrainte de stratégie d’émission qui s’applique lors de la génération d’une chaîne de certificats. La structure pointée vers indique si la logique AND ou OR doit être utilisée dans le processus de correspondance. La structure comprend également un tableau d’OID à mettre en correspondance.
dwUrlRetrievalTimeout
Durée facultative, en millisecondes, avant expiration du délai de vérification de la révocation. Ce membre est facultatif.
fCheckRevocationFreshnessTime
Membre facultatif. Lorsque cet indicateur a la valeur TRUE, une tentative de récupération d’une nouvelle liste de révocation de certificats est effectuée si cette mise à jour est supérieure ou égale à l’heure système actuelle moins la valeur dwRevocationFreshnessTime . Si cet indicateur n’est pas défini, l’heure de mise à jour suivante de la liste de révocation de certificats est utilisée.
dwRevocationFreshnessTime
Heure actuelle, en secondes, moins l’heure de mise à jour de la liste de révocation de certificats de tous les éléments vérifiés.
pftCacheResync
Membre facultatif. En cas de définition sur une valeur non NULL , les informations mises en cache avant l’heure spécifiée sont considérées comme non valides et la resynchronisation du cache est effectuée.
Windows Vista : La prise en charge de ce membre commence.
pStrongSignPara
facultatif. Spécifiez un pointeur vers une structure CERT_STRONG_SIGN_PARA pour activer la vérification forte des signatures.
Windows 8 et Windows Server 2012 : la prise en charge de ce membre commence.
dwStrongSignFlags
Indicateurs facultatifs qui modifient le comportement de récupération de chaîne. Il peut s’agir de zéro ou de la valeur suivante.
Windows 8 et Windows Server 2012 : la prise en charge de cette propriété commence.
Remarques
Les remarques suivantes s’appliquent lors de la vérification de signatures fortes.
- Définissez le membre pStrongSignPara sur case activée pour les signatures fortes lors de l’utilisation de la fonction CertGetCertificateChain ou CertSelectCertificateChains.
- Si un certificat sans signature forte est trouvé dans la chaîne, les erreurs CERT_TRUST_HAS_WEAK_SIGNATURE et CERT_TRUST_IS_NOT_SIGNATURE_VALID sont définies dans le champ dwErrorStatus de la structure CERT_TRUST_STATUS . Le paramètre ppChainContext de la fonction CertGetCertificateChain et le paramètre pprgpSelection de la fonction CertSelectCertificateChains pointent vers une structure CERT_CHAIN_CONTEXT qui, à son tour, pointe vers la structure CERT_TRUST_STATUS .
- Si la chaîne est signée de manière forte, la clé publique dans le certificat final est vérifiée pour déterminer si elle répond aux exigences minimales de longueur de clé publique pour une signature forte. Si la condition n’est pas remplie, les erreurs CERT_TRUST_HAS_WEAK_SIGNATURE et CERT_TRUST_IS_NOT_SIGNATURE_VALID sont définies dans le champ dwErrorStatus de la structure CERT_TRUST_STATUS . Définissez la valeur CERT_CHAIN_STRONG_SIGN_DISABLE_END_CHECK_FLAG dans le membre dwStrongSignFlags pour désactiver cette case activée.
- Si les indicateurs de CERT_STRONG_SIGN_ENABLE_CRL_CHECK ou de CERT_STRONG_SIGN_ENABLE_OCSP_CHECK sont définis dans la structure de CERT_STRONG_SIGN_SERIALIZED_INFO référencée par la structure de CERT_STRONG_SIGN_PARA pointée par le membre pStrongSignPara , et qu’une réponse de liste de révocation de certificats ou d’ocsp est trouvée sans signature forte, la réponse de la liste de révocation de certificats ou ocsp est traitée comme étant hors connexion. Autrement dit, les erreurs CERT_TRUST_IS_OFFLINE_REVOCATION et CERT_TRUST_REVOCATION_STATUS_UNKNOWN sont définies dans le champ dwErrorStatus de la structure CERT_TRUST_STATUS . En outre, le membre dwRevocationResult de la structure CERT_REVOCATION_INFO est défini sur NTE_BAD_ALGID.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
En-tête | wincrypt.h |