התגובה "דרוש אימות 401" הנשלח על-ידי אתר אינטרנט מתנתק כאשר אתה משתמש ב- ISA Server 2004 או ISA Server 2006 כשרת proxy אינטרנט


תופעות


שקול את התרחיש הבא:
  • השתמש אבטחת אינטרנט של Microsoft והאצת בארכיטקטורת ISA Server 2004 או ISA Server 2006 כשרת proxy אינטרנט כדי לגשת לאתר אינטרנט.
  • לבצע פעולת POST באתר האינטרנט.
  • האתר שולח תגובה "דרוש אימות 401" ללקוח.
עם זאת, ISA Server משמיט את התגובה "דרוש אימות 401" במקום להעביר את התגובה ללקוח. בעיה זו עלולה לגרום את ניסיון גישה אינטרנט להיכשל. לדוגמה, כאשר אתה מנסה להעלות קובץ גדול לאתר האינטרנט, פעולת הטעינה עשויה לחרוג מהזמן הקצוב.

פתרון


כדי לפתור בעיה זו, בצע את הפעולות הבאות:
  1. אם אתה משתמש ב- ISA Server 2004, החל את חבילת התיקון החם המתואר במאמר הבא מתוך מאגר הידע Microsoft Knowledge Base:
    940709 תיאור חבילת התיקון החם עבור ISA Server 2004: 25 ביולי 2007
    אם אתה משתמש ב- ISA Server 2006, להחיל את ערכת service pack האחרונה של ISA Server. לקבלת מידע נוסף, לחץ על מספר המאמר הבא כדי להציג את המאמר הרלוונטי מתוך Microsoft Knowledge Base:
    954258 כיצד להשיג אבטחת אינטרנט והאצת בארכיטקטורת ISA Server 2006 service pack העדכני ביותר
  2. הפעל את ' פנקס רשימות '.
  3. העתק את הקוד הבא ולאחר מכן הדבק אותו לתוך ' פנקס רשימות '.
    Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"Const SE_VPS_NAME = "AllowPrematureServerResponse"Const SE_VPS_VALUE = trueSub SetValue()    ' Create the root object.    Dim root  ' The FPCLib.FPC root object    Set root = CreateObject("FPC.Root")    'Declare the other objects that are needed.    Dim array       ' An FPCArray object    Dim VendorSets  ' An FPCVendorParametersSets collection    Dim VendorSet   ' An FPCVendorParametersSet object    ' Get references to the array object    ' and to the network rules collection.    Set array = root.GetContainingArray    Set VendorSets = array.VendorParametersSets    On Error Resume Next    Set VendorSet = VendorSets.Item( SE_VPS_GUID )    If Err.Number <> 0 Then        Err.Clear        ' Add the item.        Set VendorSet = VendorSets.Add( SE_VPS_GUID )        CheckError        WScript.Echo "New VendorSet added... " & VendorSet.Name    Else        WScript.Echo "Existing VendorSet found... value- " &  VendorSet.Value(SE_VPS_NAME)    End If    if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then        Err.Clear        VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE        If Err.Number <> 0 Then            CheckError        Else            VendorSets.Save false, true            CheckError            If Err.Number = 0 Then                WScript.Echo "Done with " & SE_VPS_NAME & ", saved!"            End If        End If    Else        WScript.Echo "Done with " & SE_VPS_NAME & ", no change!"    End IfEnd SubSub CheckError()    If Err.Number <> 0 Then        WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description        Err.Clear    End IfEnd SubSetValue
  4. שמור את הקובץ כקובץ script Microsoft Visual Basic באמצעות הסיומת של שם קובץ vbs. לדוגמה, השתמש בשם הבא כדי לשמור את הקובץ:
    AllowPrematureServerResponse.vbs
  5. הפעל שורת פקודה, לשנות את המיקום שבו שמרת את הקובץ AllowPrematureServerResponse.vbs ולאחר מכן הפעל את הפקודה הבאה:
    cscript AllowPrematureServerResponse.vbs

מצב


Microsoft אישרה כי מדובר בבעיה במוצרי Microsoft הרשומים במקטע 'חל על'.

מידע נוסף


לקבלת מידע נוסף על אופן התקנת התיקונים החמים של ISA Server ועדכונים, לחץ על מספר המאמר הבא כדי להציג את המאמר הרלוונטי מתוך Microsoft Knowledge Base:
885957 כיצד להתקין תיקונים חמים של ISA Server ועדכונים