Share via


CERT_USAGE_MATCH structure (wincrypt.h)

La structure CERT_USAGE_MATCH fournit des critères pour identifier les certificats d’émetteur à utiliser pour créer une chaîne de certificats.

Syntaxe

typedef struct _CERT_USAGE_MATCH {
  DWORD             dwType;
  CERT_ENHKEY_USAGE Usage;
} CERT_USAGE_MATCH, *PCERT_USAGE_MATCH;

Membres

dwType

Détermine le type de correspondance d’émetteur à effectuer. Dans la logique AND , le certificat doit répondre à tous les critères. Dans la logique OR , le certificat doit répondre à au moins un des critères. Les codes suivants sont définis pour déterminer la logique utilisée dans la correspondance. Pour plus d’informations sur la façon dont cela s’applique, consultez Remarques.

Valeur Signification
USAGE_MATCH_TYPE_AND
Logique AND
USAGE_MATCH_TYPE_OR
Logique OR
 

La logique de correspondance d’utilisation par défaut est USAGE_MATCH_TYPE_AND.

Usage

CERT_ENHKEY_USAGE structure (CERT_ENHKEY_USAGE est un autre nom typedef pour la structure CTL_USAGE ) qui inclut un tableau d’identificateurs d’objet de certificat (OID) qu’un certificat doit correspondre pour être valide.

Remarques

Si le membre dwType est défini sur USAGE_MATCH_TYPE_OR, le membre Usage ne peut pas être vide.

Si le membre dwType est défini sur USAGE_MATCH_TYPE_AND, un membre Utilisation vide signifie que toute utilisation imbriquée dans la chaîne fonctionnera.

Ce qui suit décrit le comportement en fonction de deux extensions d’utilisation de clé améliorée (EKU) EKU A et EKU B.

AND Logic

Si l’appelant spécifie la référence EKU A et la référence EKU B, le certificat cible est valide si les références EKU A et B sont prises en charge par chaque certificat dans le chemin d’accès (soit par un paramètre EKU explicite, soit via une extension EKU absente dans les certificats d’autorité de certification.)

LOGIQUE OR

Si l’appelant spécifie une référence EKU A OU EKU B, le certificat cible est valide si la référence EKU A ou la référence EKU B est prise en charge dans le chemin d’accès.

Outre le cas simple où les certificats dans le chemin contiennent une référence EKU A ou EKU B, la clause OR a l’évaluation spéciale suivante.

Étant donné le chemin d’accès suivant, le test OR est considéré comme valide :

Bien que l’intersection des EKU dans la chaîne soit un ensemble vide, l’utilisation du certificat EE est valide pour la référence EKU A, car la demande adressée à l’API de chiffrement spécifie que le certificat est valide si chaque certificat du chemin d’accès prend en charge la référence EKU A OU EKU B.

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