structure CERT_CHAIN_ENGINE_CONFIG (wincrypt.h)
La structure CERT_CHAIN_ENGINE_CONFIG définit les paramètres de génération d’un moteur de chaîne de certificats autre que celui par défaut. Le moteur utilisé détermine la façon dont les chaînes de certificats sont générées.
Syntaxe
typedef struct _CERT_CHAIN_ENGINE_CONFIG {
DWORD cbSize;
HCERTSTORE hRestrictedRoot;
HCERTSTORE hRestrictedTrust;
HCERTSTORE hRestrictedOther;
DWORD cAdditionalStore;
HCERTSTORE *rghAdditionalStore;
DWORD dwFlags;
DWORD dwUrlRetrievalTimeout;
DWORD MaximumCachedCertificates;
DWORD CycleDetectionModulus;
HCERTSTORE hExclusiveRoot;
HCERTSTORE hExclusiveTrustedPeople;
DWORD dwExclusiveFlags;
} CERT_CHAIN_ENGINE_CONFIG, *PCERT_CHAIN_ENGINE_CONFIG;
Membres
cbSize
Taille de cette structure en octets.
hRestrictedRoot
Ce paramètre de configuration peut être utilisé pour restreindre le magasin racine. S’il est utilisé, il peut s’agir du handle de tout HCERTSTORE contenant uniquement un sous-ensemble approprié des certificats dans le magasin racine.
hRestrictedTrust
Handle du magasin. S’il est utilisé, limite les magasins recherchés pour rechercher les listes de contrôle client.
hRestrictedOther
Handle du magasin. S’il est utilisé, restreint les magasins recherchés pour les certificats et les listes de contrôle d’accès.
cAdditionalStore
Nombre de magasins supplémentaires à rechercher pour les certificats et les listes de contrôle d’accès nécessaires pour créer des chaînes.
rghAdditionalStore
Pointeur vers un tableau de handles de magasin pour les magasins supplémentaires à rechercher dans des chaînes de création.
dwFlags
Les indicateurs suivants sont définis.
dwUrlRetrievalTimeout
Nombre de millisecondes avant un délai d’attente pour les extractions d’objets d’URL basées sur le réseau. Peut être défini sur zéro pour utiliser la limite par défaut.
MaximumCachedCertificates
Limite du nombre de certificats pouvant être mis en cache en tant qu’une chaîne est générée. Peut être défini sur 0 pour utiliser la limite par défaut.
CycleDetectionModulus
Nombre de certificats ajoutés à la chaîne avant qu’un case activée soit effectué pour déterminer s’il existe un cycle de certificats dans la chaîne. Un cycle peut être défini comme ayant le même certificat à deux endroits différents dans une chaîne.
Plus le nombre est faible, plus les vérifications sont fréquentes. La vérification supplémentaire des cycles de certificats ralentit considérablement le processus. Ce paramètre peut être défini sur zéro pour utiliser la limite par défaut.
hExclusiveRoot
Gérez vers un magasin de certificats qui contient des ancres d’approbation exclusives. Si le membre hExclusiveRoot ou hExclusiveTrustedPeople pointe vers un magasin valide, le mode d’approbation exclusif est utilisé pour la création de chaîne.
Windows 7 et Windows Server 2008 R2 : La prise en charge de ce membre commence.
hExclusiveTrustedPeople
Gérez dans un magasin de certificats qui contient des certificats approuvés d’homologues spécifiques à l’application. Si le membre hExclusiveRoot ou hExclusiveTrustedPeople pointe vers un magasin valide, le mode d’approbation exclusif est utilisé pour la création de chaîne.
Windows 7 et Windows Server 2008 R2 : La prise en charge de ce membre commence.
dwExclusiveFlags
L’indicateur suivant peut être défini. L’indicateur s’applique uniquement si hExclusiveRoot ou hExclusiveTrustedPeople ou les deux ne sont pas NULL.
Windows 8 et Windows Server 2012 : La prise en charge de ce membre commence.
Valeur | Signification |
---|---|
|
Indique qu’un certificat d’autorité de certification intermédiaire non auto-signé dans le magasin hExclusiveRoot doit être traité comme une ancre d’approbation pendant la validation du certificat. Si un certificat est enchaîné vers cette autorité de certification, la génération de chaîne est terminée et le certificat est considéré comme approuvé. Aucune vérification de signature ou vérification de révocation n’est effectuée sur le certificat d’autorité de certification.
Par défaut, si cet indicateur n’est pas défini, seuls les certificats auto-signés dans le magasin hExclusiveRoot sont traités comme des ancres d’approbation. Consultez également la valeur CERT_TRUST_IS_CA_TRUSTED dans la structure CERT_TRUST_STATUS . |
Remarques
Le moteur de création de chaîne utilise quatre magasins de certificats dans les chaînes de construction. Il s’agit de hRoot, hWorld, hTrust et hOther. Les handles de ces magasins sont établis à l’aide des informations contenues dans cette structure lors de la création d’un moteur de chaîne.
hRoot est le handle de magasin de hRestrictedRoot ou, si hRestrictedRoot a la valeur NULL, le handle pour le magasin système « Root ».
hWorld est un magasin de certificats de collection comprenant les magasins frères hRoot, « CA », « My », « Trust » et tous les magasins supplémentaires dont les handles se trouvent dans le tableau pointé par rghAdditionalStore.
hTrust est le handle de magasin de hRestrictedTrust ou, si hRestrictedTrust a la valeur NULL, hWorld.
hOther est hRestrictedOther plus hRoot ou, si hRestrictedTrust n’a pas la valeur NULL, le magasin de collection hWorld plus le handle du magasin de hRestrictedTrust.
Le mode d’approbation exclusif permet aux applications de spécifier des ancres d’approbation et des certificats approuvés par des homologues pour la validation de la chaîne de certificats. En mode d’approbation exclusive, le magasin racine et le magasin de personnes approuvées sur le système sont ignorés, et les ancres et les certificats pointés par les membres hExclusiveRoot et hExclusiveTrustedPeople sont utilisés à la place.
Configuration requise
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 |