"HTTP 400 - solicitare eronată (antet solicitare prea lung)" eroare în Internet Information Services (IIS)

IMPORTANT: Acest articol este tradus cu ajutorul software-ului Microsoft de traducere automată și poate fi corectat prin intermediul tehnologiei Community Translation Framework (CTF). Microsoft oferă articole traduse automat, post-editate de comunitate și articole traduse de oameni, pentru a permite accesul la toate articolele din Baza noastră de cunoștințe în mai multe limbi. Articolele traduse automat și post-editate pot conține greșeli de vocabular, sintaxă și/sau gramatică. Microsoft nu este responsabil de inexactitățile, erorile sau daunele cauzate de traducerea greșită a conținutului sau de utilizarea acestuia de către clienți. Găsiți mai multe informații despre traducerea în colaborare la http://support.microsoft.com/gp/machine-translation-corrections/ro.

Faceți clic aici pentru a vizualiza versiunea în limba engleză a acestui articol: 2020943
SIMPTOME

Un utilizator de domeniu încearcă să navigați la un site web găzduit pe Internet Information Services (IIS) 6.0 sau mai mare prin utilizarea Internet Explorer 6.0 sau o versiune ulterioară.  Site-ul este configurat să utilizeze autentificarea Kerberos.  Nu așteptați pagina web, utilizatorul este prezentat cu un mesaj de eroare asemănător cu următorul:

HTTP 400 - Solicitare incorectă (antet solicitare prea lung)

CAUZĂ

Această problemă poate apărea atunci când utilizatorul este membru al mai multor grupuri de utilizator Active Directory. Atunci când un utilizator este membru al unui număr mare de active directory grupuri simbolul de autentificare Kerberos pentru utilizator creşte în dimensiune. Solicitarea HTTP care utilizatorul trimite către serverul IIS conține simbolul Kerberos în antet WWW-Authenticate și dimensiunea antetului creşte ca numărul de grupuri merge în sus.  Dacă antetul HTTP sau pachet dimensiunea creşte trecut limitele configurate în IIS, IIS poate respinge cererea și trimiteți această eroare ca răspuns.

REZOLUŢIE

Pentru a rezolva această problemă, alegeți una dintre următoarele opțiuni:

A) reduce numărul de grupuri Active Directory care utilizatorul este membru al.

OR

B) modifica MaxFieldLength și setările de registry MaxRequestBytes pe serverul IIS, astfel încât utilizatorului anteturile de solicitate nu sunt considerate prea lung.  Pentru a stabili setările potrivite pentru MaxFieldLength și intrările de registry MaxRequestBytes, utilizați următoarele calcule:

    1. Calcularea dimensiunea utilizatorului Kerberos simbol utilizând formula descrisă în următorul articol:

      Autentificare nou rezolvarea problemelor cu Kerberos atunci când utilizatorii aparţine mai multor grupuri
      http://support.microsoft.com/kb/327825


    2. Configurați MaxFieldLength și cheile de registry MaxRequestBytes pe serverul IIS cu o valoare de4/3 * T, unde T este dimensiunea simbolului utilizatorului, în octeți. HTTP codifică simbolul Kerberos utilizând codificarea base64 și, prin urmare, fiecare 3 octeţi în simbolul cu 4 base64 înlocuiește codificat octeți.  Modificările efectuate în registry nu vor avea efect până când reporniți serviciul HTTP. În plus, trebuie să reporniți orice alte servicii IIS.

Notă: În funcție de mediul de aplicație, se poate, de asemenea, luați în considerare configurarea site-ul web pentru a utiliza NTLM în locul Kerberos pentru a rezolva această problemă.  Unele aplicații medii necesită pentru a fi utilizate în scopuri de delegare Kerberos, iar Kerberos este mai sigur decât NTLM, deci se recomandă să nu dezactivați Kerberos înainte de a examina riscurile de securitate și delegare a face acest lucru.


INFORMAŢII SUPLIMENTARE

În mod implicit, intrarea de registry MaxFieldLength nu este prezentă. Această intrare de registry specifică limita de dimensiune maximă de fiecare antet de solicitare HTTP. Intrarea de registry MaxRequestBytes specifică dimensiunea maximă pentru dimensiunea totală a liniei solicitare și anteturile. De obicei, această intrare de registry este configurat cu intrarea de registry MaxRequestBytes. Dacă valoarea MaxRequestBytes este mai mică decât valoarea MaxFieldLength, este reglat valoarea MaxFieldLength.  În medii Active Directory mare, utilizatorii pot să apară erori de log on, dacă valorile pentru ambele aceste intrări nu sunt setate la o valoare suficient de mare.

Pentru Internet Information Services (IIS) 6.0 și versiuni mai recente, cheile de registry MaxFieldLength și MaxRequestBytes se află laHKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters.  Configuraţi-le, așa cum se arată în tabelul următor:

Nume

Tip valoare

Valoarea de date

MaxFieldLength

DWORD

(4/3 * T octeți) + 200

MaxRequestBytes

DWORD

(4/3 * T octeți) + 200

Ca alternativă poate seta cheile de registry la valorile maximă de mai jos. Administratorul trebuie să luați în considerare toate riscurile de securitate potențiale dacă el face modificări la setările de registry:

 

Nume

Tip valoare

Valoarea de date

MaxFieldLength

DWORD

65534

MaxRequestBytes

DWORD

16777216

IMPORTANT: Modificarea cheilor de registry poate fi considerat extrem de periculoase. Aceste chei permite mai mare de pachete HTTP pentru a fi trimise către IIS, care la rândul său poate provoca Http.sys să utilizeze mai multă memorie și poate creşte vulnerabilitatea la atacuri rău intenționat.

Notă: Dacă MaxFieldLength este configurat la valoarea maximă de 64 KO, apoi MaxTokenSize valoarea de registry trebuie setată la 3/4 * 64 = 48 KB.  Pentru mai multe informații despre setarea MaxTokenSize, consultați articolul din baza de cunoștințe Microsoft KB327825 listate mai jos.

Mai multe informații despre subiectele discutate în acest articol pot fi găsite la următoarele locații:

Http.sys setările registry pentru IIS
http://support.Microsoft.com/kb/820129/en-us

Eroare de conectare la HTTP API
http://support.Microsoft.com/?id=820729

Rezolvare nouă pentru probleme cu autentificarea Kerberos atunci când utilizatorii aparţine mai multor grupuri
http://support.Microsoft.com/kb/327825

Mesaj de eroare când un utilizator de Outlook Web Access încearcă să acceseze o cutie poștală în Exchange Server 2003
http://support.Microsoft.com/kb/920862

Avertisment: acest articol a fost tradus automat

Proprietăți

ID articol: 2020943 - Ultima examinare: 10/26/2015 09:17:00 - Revizie: 1.0

  • kbmt KB2020943 KbMtro
Feedback