S’applique à
Internet Explorer 11 Internet Explorer 10 Windows Server 2008 R2 Standard Windows Server 2008 R2 Enterprise Windows Server 2008 R2 Datacenter

Symptômes

Prenons l’exemple du scénario suivant :

  • Le service de rôle Inscription web des services de certificats est installé sur un serveur Windows Server 2008 R2.

  • Vous disposez d’un ordinateur client qui exécute Internet Explorer 10 ou une version ultérieure.

  • Vous essayez d’accéder à la page Inscription web des services de certificats qui est hébergée sur le serveur Windows Server 2008 R2.

Dans ce scénario, l’erreur suivante est reçue dans Internet Explorer :

Ce navigateur web ne prend pas en charge la génération de demandes de certificat

Cause

La version du navigateur case activée identifie de manière incorrecte la version d’Internet Explorer comme étant « Internet Explorer 1 ».

Solution de contournement 

Les solutions de contournement prises en charge pour ce problème sont les suivantes :

  • Configurez l’affichage de compatibilité dans Internet Explorer.

  • Déplacez la fonctionnalité de page Inscription web vers Windows Server 2012.

  • Modifiez le fichier Certsbrt.inc en remplaçant les lignes 44 à 70 par le contenu suivant. Certsbrt.inc se trouve dans le dossier suivant :

    %WINDIR %\system32\certsrv\en-us

'' If there is no '.' in the UserAgent string, this will return the next character if any' as the version number. ' We extract the string until a '.' and then convert it' into integer. If -1 is returned from this function then it isn't MSIE 'Function GetInternetExplorerVersionNumber(sHttpUserAgent)    Dim nMSIEGetInternetExplorerVersionNumber = -1     nMSIE = InStr(sHttpUserAgent, "MSIE")    If 0 <> nMSIE Then        numChar = InStr(Mid(sHttpUserAgent, nMSIE + 5), ".") - 1        If -1 = numChar Then ' no '.' in the string           numChar = 1        End If        If nMSIE + 5 + numChar - 1 <= Len(sHttpUserAgent) Then            GetInternetExplorerVersionNumber = CInt(Mid(sHttpUserAgent, nMSIE + 5, numChar))        End If     End IfEnd Function'' We define a Old MSIE based browser' if it has the string MSIE that is followed by a version number that is less than 4' NOTE:' IsOldMSIE = False does not imply MSIE >= 4.'' i.e. Not IsOldMSIE("abc") = True'      Not IsOldMSIE("MSIE") = True'Function IsOldMSIE(sHttpUserAgent)   Dim nMSIE   Dim sMSIEVersion   IsOldMSIE = False   nMSIE = InStr(sHttpUserAgent, "MSIE")   If nMSIE <> 0 AND (nMSIE+5 < Len(sHttpUserAgent)) Then      nVersion = GetInternetExplorerVersionNumber(sHttpUserAgent)      If -1 <> nVersion Then          IsOldMSIE = nVersion < NEW_MSIE_VERSION      End If   End IfEnd Function

Informations supplémentaires

Les lignes 44 à 70 du fichier Certsbrt.inc non modifié sur le serveur Windows Server 2008 R2 sont les suivantes. Ce sont les lignes qui doivent être remplacées.

'' We define a Old MSIE based browser' if it has the string MSIE that is followed by a version number that is less than 4' NOTE:' IsOldMSIE = False does not imply MSIE >= 4.'' i.e. Not IsOldMSIE("abc") = True'      Not IsOldMSIE("MSIE") = True'Function IsOldMSIE(sHttpUserAgent)   Dim nMSIE   Dim sMSIEVersion   nMSIE = InStr(sHttpUserAgent, "MSIE")   If nMSIE=0 Then      IsOldMSIE = False   ElseIf nMSIE+5 < Len(sHttpUserAgent) Then      sMSIEVersion = Mid(sHttpUserAgent, nMSIE+5, 1)      IsOldMSIE = CInt(sMSIEVersion) < NEW_MSIE_VERSION   Else      IsOldMSIE = False   End IfEnd Function

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.