Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Symptômes
Lorsqu'un utilisateur tente de créer un proxy pour une requête HTTP à partir d'un serveur Microsoft Exchange Server 2016 exécutant le service d'accès client ou d'un serveur Microsoft Exchange Server 2013 Client Access (CAS) vers une version antérieure d'Exchange Server, l'utilisateur peut recevoir le message d'erreur suivant :
Cette erreur (HTTP 400 Requête incorrecte) signifie qu'Internet Explorer a pu se connecter au serveur web, mais que la page web n'a pas pu être trouvée en raison d'un problème d'adresse.
De plus, les journaux HTTPERR sur le serveur d'accès client Microsoft Exchange Server 2010 ou Microsoft Exchange Server 2007 peuvent afficher l'une des options suivantes pour la ressource HTTP que l'utilisateur demandait.
2014-07-24 16:48:06 192.168.137.113 53335 192.168.137.110 443 HTTP/1.1 GET /owa/ 400 - RequestLength -
2014-07-24 16:48:06 192.168.137.113 53335 192.168.137.110 443 HTTP/1.1 GET /owa/ 400 - FieldLength -
De plus, vous pouvez voir ce qui suit dans les journaux de ressources Http du serveur d'accès client Exchange Server 2013 dans le répertoire <Exchange Server Install Path>\Logging\HttpProxy\<Http resource>.
2014-07-24T16:56:17.806Z,ddf5379e-4a97-4833-b331-36328b9f8b58,15,0,913,7,,Owa,outlook.Wingtiptoys.com,/owa/,,Negotiate,True,WINGTIPTOYS\user003,,Sid~S-1-5-21-3205615561-4199783494-2467053687-1128,Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET4.0C; .NET4.0E; .NET CLR 3.5.30729; .NET CLR 3.0.30729),192.168.137.113,WINGTIP-E2K13,400,400,,GET,Proxy,wingtip-e2k10.wingtiptoys.com,14.03.0123.000,IntraForest,WindowsIdentity-ServerCookie,Server~WINGTIP-E2K10.Wingtiptoys.com~1937997947~07/24/2014 17:01:18,,,0,342,1,,4,14,,0,,0,,0,0,,0,46.8744,0,,,,18,0,1,0,0,1,38,1,20,20,20,24,43,,,BeginRequest=2014-07-24T16:56:17.759Z;CorrelationID=<empty>;ProxyState-Run=None;ProxyToDownLevel=True;BeginGetResponse=2014-07-24T16:56:17.791Z;OnResponseReady=2014-07-24T16:56:17.806Z;EndGetResponse=2014-07-24T16:56:17.806Z;ProxyState-Complete=ProxyResponseData;EndRequest=2014-07-24T16:56:17.806Z;,WebExceptionStatus=ProtocolError;ResponseStatusCode=400;WebException=System.Net.WebException: The remote server returned an error: (400) Bad Request. at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at Microsoft.Exchange.HttpProxy.ProxyRequestHandler.<>c__DisplayClass2a.<OnResponseReady>b__28();
La cause
Ce problème peut survenir si l'utilisateur est membre de nombreux groupes Active Directory. Ce problème peut survenir lors du processus de proxy du serveur Exchange 2016 ou du serveur Exchange 2013 CAS vers le serveur Exchange 2010 CAS.
Résolution
Pour résoudre ce problème, utilisez l'une des méthodes suivantes :
Réduisez le nombre de groupes Active Directory qui sont attribués à l'utilisateur.
Sur chaque CAS Exchange 2010, localisez la sous-clé suivante :
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
Sous cette sous-clé, augmentez les entrées MaxFieldLength et MaxRequestBytes en utilisant les valeurs du tableau suivant.
Nom de valeur Type valeur Valeurs des données Base de valeurs LongueurMaximaleDuChamp DWORD 65536 Décimal MaxRequestBytes DWORD 65536 Décimal Remarques
- Ce changement nécessite un redémarrage du CAS.
- Si les entrées pour MaxFieldLength et MaxRequestBytes n'existent pas, créez les entrées manuellement.
Plus d'informations
Important
Modifier ces clés de registre peut être extrêmement dangereux. L'augmentation des valeurs permet d'envoyer des paquets HTTP plus volumineux à IIS, ce qui peut à son tour amener Http.sys à utiliser plus de mémoire et accroître la vulnérabilité aux attaques malveillantes.
La valeur recommandée pour la coexistence d'Exchange Server est 65536.
Remarque
La valeur doit être 65536 pour Exchange Server. Il ne devrait pas être 65534, comme indiqué dans KB 2020943. Ce paramètre est destiné aux services Internet (IIS). Cette différence est due à des exigences supplémentaires pour Exchange Server.
Dans certains cas, une valeur de MaxFieldLength de 65536 peut ne pas résoudre le problème. Si cela se produit, nous vous recommandons de réduire la taille du jeton d'accès de l'utilisateur en supprimant des groupes au lieu d'augmenter la valeur.
Augmenter la valeur de MaxRequestBytes pour qu'elle dépasse 65536 comporte des risques. Par conséquent, nous vous déconseillons de le faire. Ces risques sont discutés en détail dans KB 820129. Cette clé se voit attribuer un code d'avertissement de 1 pour indiquer un risque élevé de modification de la valeur par défaut.