Les clients ne peuvent pas établir de connexions si vous avez besoin de certificats client sur un site Web ou si vous utilisez IAS dans Windows Server 2003

S’applique à : Microsoft Windows Server 2003 Datacenter Edition (32-bit x86)Microsoft Windows Server 2003 Enterprise Edition (32-bit x86)Microsoft Windows Server 2003 Standard Edition (32-bit x86)

Important Cet article contient des informations sur la façon de modifier le Registre. Assurez-vous que vous sauvegardez le Registre avant de le modifier. Assurez-vous que vous savez comment restaurer le Registre si un problème survient. Pour plus d’informations sur la façon de sauvegarder, restaurer et modifier le Registre, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
256986 description du Registre Microsoft Windows

Symptômes


Examinons les scénarios suivants.

Scénario 1

  • Vous avez un site Web de Microsoft Internet Information Services (IIS) 6.0 qui utilise le protocole Secure Sockets Layer (SSL) pour crypter les connexions client.
  • L’option Exiger les certificats clients est sélectionnée dans la boîte de dialogue Communications sécurisées de la boîte de dialogue Propriétés de nom du site Web .
Dans ce scénario, vous pouvez rencontrer les problèmes suivants :
  • Clients ne peut pas se connecter au site Web avec succès.
  • L’événement d’avertissement suivant est enregistré sur l’ordinateur qui héberge le site Web basé sur Microsoft Windows Server 2003 :
Remarque Par défaut, les événements d’avertissement de Secure Channel (Schannel) ne sont pas enregistrés. Pour plus d’informations sur la façon de configurer l’enregistrement des événements de canal sécurisé, consultez la section « Informations complémentaires ».

Scénario 2

Vous utilisez un ordinateur Microsoft Windows Server 2003 qui exécute Microsoft Internet Authentication Service (IAS) pour prendre en charge l’authentification d’un réseau sans fil. Dans ce scénario, vous pouvez rencontrer les problèmes suivants :
  • Le serveur IAS ne peut pas authentifier avec succès des clients. Par conséquent, les ordinateurs clients sans fil impossible de se connecter au réseau sans fil avec succès.
  • Un événement d’avertissement semblable au suivant est enregistré sur le serveur IAS :
  • Un événement semblable à l’événement d’avertissement suivant peut être enregistré sur le serveur IAS :
Remarque Par défaut, les événements d’avertissement de Secure Channel (Schannel) ne sont pas enregistrés. Pour plus d’informations sur la façon de configurer l’enregistrement des événements de canal sécurisé, consultez la section « Informations complémentaires ».

Cause


Ce problème peut se produire si le serveur Web ou le serveur IAS contient de nombreuses entrées de la liste de certification de racine de confiance. Le serveur envoie une liste des autorités de certification approuvées au client si les conditions suivantes sont remplies :
  • Le serveur utilise la sécurité TLS (Transport Layer) / protocole de SSL pour crypter le trafic du réseau.
  • Les certificats clients sont requis pour l’authentification au cours du processus de négociation de l’authentification.
Cette liste d’autorités de certification de confiance représente les autorités à partir de laquelle le serveur peut accepter un certificat client. Pour être authentifié par le serveur, le client doit avoir un certificat qui est présent dans la chaîne de certificats jusqu'à un certificat racine à partir de la liste du serveur.

Actuellement, la taille maximale de la liste d’autorités de certification de confiance qui prend en charge par le package de sécurité Schannel est 12,228 (0 x 3000) octets.

Schannel crée la liste des autorités de certification approuvées par recherche dans le magasin d’autorités de Certification racines de confiance sur l’ordinateur local. Chaque certificat est approuvé pour l’authentification client est ajouté à la liste. Si la taille de cette liste dépasse octets 12,228, Schannel enregistre l’ID d’événement avertissement 36885. Ensuite, Schannel tronque la liste des certificats racine de confiance et envoie cette liste tronquée à l’ordinateur client.

Lorsque l’ordinateur client reçoit la liste tronquée des certificats racine de confiance, l’ordinateur client est peut-être pas un certificat qui existe dans la chaîne d’un émetteur de certificat de confiance. Par exemple, l’ordinateur client peut avoir un certificat qui correspond à un certificat racine approuvé que Schannel tronqué à partir de la liste des autorités de certification de confiance. Par conséquent, le serveur IAS ne peut pas authentifier le client.

Le correctif augmente la mémoire de tampon de sécurité Schannel à 16 Ko. Si vous dépassez cette limite, vous aurez toujours des problèmes qui sont décrits dans la section Symptômes de cet article. Cette modification a également été incluse dans Windows Server 2008 et Windows Server 2008 R2. Les solutions de contournement décrites ci-dessous seront applique également à Windows Server 2008 et Windows Server 2008 R2.


Résolution


Informations sur le correctif

Un correctif pris en charge est désormais disponible auprès de Microsoft. Toutefois, il est conçu pour résoudre uniquement le problème décrit dans cet article. Il s’applique uniquement aux systèmes rencontrant ce problème spécifique. Ce correctif peut subir des tests supplémentaires. Par conséquent, si vous n’êtes pas sérieusement concerné par ce problème, nous vous recommandons d’attendre le prochain service pack Windows Server 2003 qui comprendra ce correctif.

Pour résoudre ce problème immédiatement, contactez les Services de Support technique Microsoft pour obtenir le correctif. Pour obtenir une liste complète des numéros de téléphone des Services de Support technique Microsoft et des informations sur les coûts de support, visitez le site Web de Microsoft à l’adresse suivante :Remarque Dans des cas particuliers, des frais généralement encourus pour les appels au support technique peuvent être annulés si un technicien du support technique Microsoft détermine qu'une mise à jour spécifique peut résoudre votre problème. Les coûts habituels du support technique s’appliqueront aux autres questions et problèmes qui ne relèvent pas de la mise à jour spécifique en question.

Conditions préalables

Pour appliquer ce correctif, vous devez disposer de Windows Server 2003 Service Pack 1 (SP1) ou Windows Server 2003 Service Pack 2 (SP2) est installé sur l’ordinateur. Pour plus d’informations sur la façon d’obtenir le dernier service pack pour Windows Server 2003, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :

889100 comment faire pour obtenir le dernier service pack pour Windows Server 2003

Nécessite un redémarrage

Vous devez redémarrer l’ordinateur après avoir appliqué ce correctif.

Informations de remplacement du correctif

Ce correctif ne remplace aucun autre correctif.

Informations sur les fichiers

La version anglaise de ce correctif dispose des attributs de fichier (ou version ultérieure) répertoriés dans le tableau suivant. Les dates et heures de ces fichiers sont répertoriées en temps universel coordonné (UTC). Lorsque vous affichez les informations de fichier, elles sont converties en heure locale. Pour trouver la différence entre l’UTC et l’heure locale, utilisez l’onglet fuseau horaire dans l’élément de Date et heure dans le panneau de configuration.
Windows Server 2003, versions x86 avec le Service Pack 1
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateforme
Schannel.dll5.2.3790.2971144,89610-Jul-200717:27x86
Windows Server 2003, versions x86 avec le Service Pack 2
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateforme
Schannel.dll5.2.3790.4115147,45610-Jul-200717:51x86
Windows Server 2003, versions x64 avec le Service Pack 1
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateformeDossier
Schannel.dll5.2.3790.2971254,46410-Jul-200703:15x64Ne s'applique pas
Wschannel.dll5.2.3790.2971144,89610-Jul-200703:15x86WOW
Windows Server 2003, versions x64 avec le Service Pack 2
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateformeDossier
Schannel.dll5.2.3790.2971254,46410-Jul-200703:15x64Ne s'applique pas
Wschannel.dll5.2.3790.2971144,89610-Jul-200703:15x86WOW
Windows Server 2003, versions Itanium avec Service Pack 1
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateformeDossier
Schannel.dll5.2.3790.2971466,43210-Jul-200703:16IA-64Ne s'applique pas
Wschannel.dll5.2.3790.2971144,89610-Jul-200703:16x86WOW
Windows Server 2003, versions Itanium avec Service Pack 2
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateformeDossier
Schannel.dll5.2.3790.4115466,43210-Jul-200703:24IA-64Ne s'applique pas
Wschannel.dll5.2.3790.4115147,45610-Jul-200703:24x86WOW

Solution de contournement


Pour contourner ce problème, utilisez une des méthodes suivantes, en fonction de votre situation.

Méthode 1 : Supprimer des certificats racine de confiance

Si certains des certificats racine de confiance ne sont pas utilisés dans votre environnement, les supprimer à partir du serveur Web ou à partir du serveur IAS. Pour ce faire, procédez comme suit :
  1. Cliquez sur Démarrer, sur exécuter, tapez mmc, puis cliquez sur OK.
  2. Dans le menu fichier , cliquez sur Ajouter/supprimer un composant logiciel enfichable, puis cliquez sur Ajouter.
  3. Dans la boîte de dialogue Ajout d’un composant logiciel enfichable autonome , cliquez sur certificats, puis cliquez sur Ajouter.
  4. Cliquez sur compte d’ordinateuret cliquez sur suivant, puis cliquez sur Terminer.
  5. Cliquez sur Fermer, puis cliquez sur OK.
  6. Sous la Racine de la Console dans le composant logiciel enfichable Microsoft Management Console (MMC), développez certificats (ordinateur Local), développez Autorités de Certification racines de confiance, puis cliquez sur certificats.
  7. Supprimer les certificats racine de confiance que vous n’êtes pas sensé avoir. Pour ce faire, cliquez sur un certificat et cliquez sur Supprimerpuis sur Oui pour confirmer la suppression du certificat.
Remarque Il existe certains certificats racine qui sont requis par Windows. Pour plus d’informations, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :

Certificats racine de confiance 293781 qui sont requis par Windows Server 2003, Windows XP et Windows 2000

Méthode 2 : Configurer la stratégie de groupe pour ignorer la liste d’autorités de certification sur l’ordinateur local

Si le serveur IAS ou le serveur Web est membre d’un domaine, vous pouvez créer une stratégie pour forcer le serveur à ignorer la la liste des autorités de certification de confiance sur l’ordinateur local. Lorsque vous appliquez cette stratégie, les clients et les serveurs affectés approuvent uniquement les certificats qui se trouvent dans le magasin d’autorités de Certification racine d’entreprise. Par conséquent, vous n’êtes pas obligé de modifier les ordinateurs individuels.

Remarque Cette méthode fonctionne uniquement si tous les ordinateurs clients sont dans le même domaine de service d’annuaire Active Directory ou d’une forêt Active Directory. Stratégie de groupe n’est pas appliqué aux ordinateurs qui ne sont pas dans la même forêt Active Directory.


Pour créer cette stratégie, procédez comme suit.

Étape 1 : Créer un objet de stratégie de groupe

  1. Ouvrez une session sur un contrôleur de domaine, puis démarrez l’outil Active Directory utilisateurs et ordinateurs. Pour ce faire, cliquez sur Démarrer, sur exécuter, tapez DSA.msc, puis cliquez sur OK.
  2. Cliquez sur le conteneur dans lequel vous souhaitez configurer l’objet stratégie de groupe, puis cliquez sur Propriétés. Par exemple, cliquez sur le conteneur de domaine, ou avec le bouton droit à un conteneur d’unité d’organisation.
  3. Cliquez sur l’onglet Stratégie de groupe , puis cliquez sur Nouveau.
  4. Tapez un nom descriptif pour la stratégie et appuyez sur ENTRÉE.
  5. Cliquez sur Modifier pour lancer l’éditeur d’objets de stratégie de groupe.
  6. Développez Configuration ordinateur, développez Paramètres Windows, développez Paramètres de sécurité, puis cliquez sur Stratégies de clé publique.
  7. Droit des Autorités de Certification racines de confiance, puis cliquez sur Propriétés.
  8. Cliquez sur les Autorités de Certification racine d’entreprise, puis cliquez sur OK.
  9. Quittez l’éditeur d’objets de stratégie de groupe.
  10. Cliquez sur OK pour fermer la boîte de dialogue Propriétés de nom_objet .

Étape 2 : Ajouter des certificats racines au magasin de certificats de « Autorités principales de confiance »

  1. Exporter des certificats racine nécessaires à partir du magasin ordinateur local du serveur approprié. Cela inclut les certificats racine pour les autorités de certification internes (CA) et certificats racine pour les autorités de certification publiques requis par votre organisation.
  2. Ouvrez une session sur un contrôleur de domaine, puis démarrez l’outil Active Directory utilisateurs et ordinateurs.
  3. Droit sur le conteneur qui contient l’objet de stratégie de groupe que vous avez créé dans la « étape 1 : créer un objet GPO » et puis cliquez sur Propriétés.
  4. Cliquez sur l’onglet Stratégie de groupe , cliquez sur l’objet de stratégie de groupe, puis cliquez sur Modifier.
  5. Développez Configuration ordinateur, développez Paramètres Windows, développez Paramètres de sécurité, puis cliquez sur Stratégies de clé publique.
  6. Droit des Autorités principales de confiance », puis cliquez sur Importer.
  7. Suivez les étapes de l’Assistant Importation de certificat pour importer le certificat racine ou les certificats que vous avez exporté à l’étape 2.
  8. Quittez l’éditeur d’objets de stratégie de groupe.
  9. Cliquez sur OK pour fermer la boîte de dialogue Propriétés de nom_objet .
Remarque Il existe certains certificats racine qui sont requis par Windows. Vous devez ajouter ces certificats à la stratégie que vous avez créé. Pour plus d’informations, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :

Certificats racine de confiance 293781 qui sont requis par Windows Server 2003, Windows XP et Windows 2000

Méthode 3 : Configurer Schannel pour ne plus envoyer la liste des autorités de certification racine de confiance pendant le processus de négociation TLS/SSL

Avertissement Des problèmes graves peuvent survenir si vous modifiez le Registre incorrectement à l’aide de l’Éditeur du Registre ou en utilisant une autre méthode. Ces problèmes peuvent nécessiter que vous réinstalliez le système d’exploitation. Microsoft ne peut pas garantir que ces problèmes puissent être résolus. Modifiez le Registre à vos risques et périls.

Sur le serveur qui exécute IIS ou le serveur IAS sur lequel vous rencontrez ce problème, définissez l’entrée de Registre suivante sur false :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL

Nom de la valeur : SendTrustedIssuerList
Type de la valeur : REG_DWORD
Données de la valeur : 0 (faux)
Par défaut, cette entrée n’est pas répertoriée dans le Registre. Par défaut, cette valeur est 1 (vrai). Cette entrée de Registre contrôle l’indicateur qui contrôle si le serveur envoie une liste des autorités de certification approuvées au client. Lorsque vous définissez cette entrée de Registre à la valeur False, le serveur n’envoie pas d’une liste d’autorités de certification approuvées au client. Ce comportement peut affecter la façon dont le client répond à une demande de certificat. Par exemple, si Internet Explorer reçoit une demande d’authentification du client, Internet Explorer affiche uniquement les certificats du client qui apparaissent dans la chaîne de l’une des autorités de certification qui figurent dans la liste à partir du serveur. Toutefois, si le serveur n’envoie pas d’une liste d’autorités de certification approuvées, Internet Explorer affiche tous les certificats clients sont installés sur l’ordinateur client.

Pour définir cette entrée de Registre, procédez comme suit :
  1. Cliquez sur Démarrer, sur exécuter, tapez regedit, puis cliquez sur OK.
  2. Recherchez et cliquez sur la sous-clé de Registre suivante :
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
  3. Dans le menu Edition , pointez sur Nouveau, puis cliquez sur Valeur DWORD.
  4. Tapez SendTrustedIssuerListet appuyez sur ENTRÉE pour nommer l’entrée de Registre.
  5. Cliquez sur SendTrustedIssuerList, puis cliquez sur Modifier.
  6. Dans la zone données de la valeur , tapez 0 si cette valeur n’est pas déjà affichée, puis cliquez sur OK.
  7. Quittez l'Éditeur du Registre.
Pour plus d’informations sur l’entrée de Registre SCHANNEL, visitez le site Web de Microsoft à l’adresse suivante :

État


Microsoft a confirmé l'existence de ce problème dans les produits Microsoft répertoriés dans la section « S'applique à ».

Plus d'informations


Windows Server 2003 est conçu pour examiner automatiquement la liste des autorités de certification de confiance sur le site Web Microsoft Windows Update lorsque vous mettez à jour les certificats racine à jour. Ensuite, Windows installe le certificat racine approprié une fois que le certificat est validé par un programme de l’utilisateur.

Remarque Dans Windows Server 2003, la liste des autorités de certification ne peut pas dépasser 12,228 (0 x 3000) octets. Lorsque vous mettez à jour les certificats racine, la liste des autorités de certification de confiance peut augmenter de manière significative. Par conséquent, la liste peut devenir trop longue. Dans ce cas, Windows tronque la liste. Ce comportement peut provoquer des problèmes d’autorisation. Dans ce scénario, vous pouvez rencontrer le problème décrit dans la section « Symptômes ».

Comment faire pour configurer l’enregistrement des événements de canal sécurisé

Avertissement Des problèmes graves peuvent survenir si vous modifiez le Registre incorrectement à l’aide de l’Éditeur du Registre ou en utilisant une autre méthode. Ces problèmes peuvent nécessiter que vous réinstalliez le système d’exploitation. Microsoft ne peut pas garantir que ces problèmes puissent être résolus. Modifiez le Registre à vos risques et périls.

Pour configurer Schannel pour consigner les événements d’avertissement dans le journal système, définissez l’entrée de Registre suivante :
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\Schannel

Nom de la valeur : EventLogging
Type de la valeur : REG_DWORD
Données de la valeur : 0 x 3
Remarque Une valeur de 0 x 3 configure Schannel pour consigner les événements d’avertissement et les événements d’erreur.

Pour plus d’informations sur la façon de configurer l’enregistrement des événements de canal sécurisé, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :

260729 comment activer Schannel enregistrement des événements dans IIS

Références


Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :

Membres du programme de certificat 931125 Microsoft racine (janvier 2007)

Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :

Configuration requise des certificats 814394 lorsque vous utilisez EAP-TLS ou PEAP avec EAP-TLS