文章編號: 927265 - 上次校閱: 2010年9月7日 - 版次: 2.0

當用戶端電腦使用 Internet Explorer 7,透過不需要驗證的下游 ISA Server 電腦驗證上游 ISA Server 電腦時,驗證會失敗

可以下載 Hotfix下載 Hotfix
檢視和要求下載 hotfix
系統提示本文適用於您使用的作業系統之外的作業系統。與您不相關的文章內容已停用。

在此頁中

全部展開 | 全部摺疊

徵狀

請試想下列案例:
  • 您設定了需要驗證的上游 Microsoft Internet Security and Acceleration (ISA) Server 電腦。
  • 您設定了不需要驗證的下游 ISA Server 電腦。
  • 和下游 ISA Server 電腦連線的用戶端電腦目前正在執行 Windows Internet Explorer 7。
在這個案例中,用戶端電腦無法驗證上游 ISA Server 電腦。

發生的原因

執行 Internet Explorer 7 的用戶端電腦會取得有效驗證下游伺服器的 Kerberos 票證,然而上游 ISA Server 電腦在進行驗證時並不會驗證這個 Kerberos 票證。

特別是當上游 ISA Server 電腦要求驗證時,用戶端電腦會取得下游伺服器的 Kerberos 票證。這個 Kerberos 票證可以有效驗證下游 ISA Server 電腦,但無法驗證上游 ISA Server 電腦。由於當用戶端電腦將 Kerberos 票證提供給上游 ISA Server 電腦時,上游 ISA Server 電腦無法驗證票證,因此驗證會失敗。

注意
  • 下游 ISA Server 電腦是和用戶端電腦通訊的 Proxy 伺服器。
  • Internet Explorer 7 含有適用於 Proxy 伺服器的 Kerberos 驗證支援。
當 Kerberos 驗證失敗時,NTLM 驗證可成為替代的驗證方法。然而由於用戶端電腦已成功取得 Proxy 伺服器的 Kerberos 票證,因此用戶端電腦不會使用 NTLM 驗證。

解決方案

Hotfix 資訊

Microsoft 已提供支援的 Hotfix。但是其目的只為修正本文中所描述的問題。請只在發生此特定問題的系統上套用此 Hotfix。此 Hotfix 可能會接受其他測試。因此,如果此問題沒有對您造成嚴重影響,Microsoft 建議您等候下一版包含此 Hotfix 的軟體更新。

如果 Hotfix 已開放下載,此「知識庫」文件的頂端便會出現「下載 Hotfix」區段。如果沒有顯示這個區段,請連絡「Microsoft 客戶服務及支援」以取得此 Hotfix。

注意 如果發生其他問題,或者需要進行任何疑難排解,您可能必須另外建立一份服務要求。一般來說,如果有其他支援問題是此特定功能無法解決的,才會收取支援費用。如需「Microsoft 客戶服務及支援」的完整電話號碼清單,或是另外建立一份服務要求,請造訪下列 Microsoft 網站:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
注意 「下載 Hotfix」表單會以 Hotfix 支援的語言顯示。如果您沒有看到所使用的語言,這是因為 Hotfix 未提供該語言的支援。

先決條件

電腦必須執行 ISA Server 2004 Service Pack 2 (SP2) 才能套用 ISA Server 2004 版本的 Hotfix。

重新啟動需求

套用此 Hotfix 後,Hotfix 會重新啟動 ISA Server 服務。

Hotfix 取代資訊

這個 Hotfix 不會取代任何其他的 Hotfix。

檔案資訊

此 Hotfix 的英文版具有下表中所列的檔案屬性 (或較新的檔案屬性)。這些檔案的日期和時間是以 Coordinated Universal Time (UTC) 表示。當您檢視檔案資訊時,它會轉換為當地時間。如果要查看 UTC 與當地時間的差異,請使用 [控制台] 中 [日期和時間] 項目的 [時區] 索引標籤。
ISA Server 2006
摺疊此表格展開此表格
File nameFile versionFile sizeDateTimePlatform
Linktranslation.dll5.0.5720.154247,13625-Oct-200609:24x86
Msfpc.dll5.0.5720.154549,21625-Oct-200609:24x86
Msfpccom.dll5.0.5720.1546,409,56825-Oct-200609:24x86
W3filter.dll5.0.5720.154890,20825-Oct-200609:24x86
ISA Server 2004, Enterprise Edition
摺疊此表格展開此表格
File nameFile versionFile sizeDateTimePlatform
Comphp.dll4.0.3443.628167,78427-Oct-200614:45x86
Complp.dll4.0.3443.62863,33627-Oct-200614:45x86
Cookieauthfilter.dll4.0.3443.628159,59227-Oct-200614:45x86
Linktranslation.dll4.0.3443.628123,75227-Oct-200614:45x86
Msfpc.dll4.0.3443.628377,19227-Oct-200614:45x86
Msfpccom.dll4.0.3443.6285,024,10427-Oct-200614:45x86
Msfpcsnp.dll4.0.3443.6284,656,48827-Oct-200614:45x86
Msfpcui.dll4.0.3443.6282,420,58427-Oct-200614:45x86
Mspadmin.exe4.0.3443.628282,98427-Oct-200614:45x86
Msphlpr.dll4.0.3443.628405,35227-Oct-200614:45x86
Mspmon.dll4.0.3443.62852,58427-Oct-200614:45x86
Mspmsg.dll4.0.3443.628254,31227-Oct-200614:45x86
Ratlib.dll4.0.3443.62840,80827-Oct-200614:45x86
Rpcfltr.dll4.0.3443.628130,92027-Oct-200614:45x86
Socksflt.dll4.0.3443.62895,59227-Oct-200614:45x86
W3filter.dll4.0.3443.628752,48827-Oct-200614:45x86
Wspsrv.exe4.0.3443.6281,067,36827-Oct-200614:45x86
ISA Server 2004, Standard Edition
摺疊此表格展開此表格
File nameFile versionFile sizeDateTimePlatform
Comphp.dll4.0.2165.628167,27227-Oct-200614:35x86
Complp.dll4.0.2165.62863,84827-Oct-200614:35x86
Cookieauthfilter.dll4.0.2165.628161,12827-Oct-200614:35x86
Msfpc.dll4.0.2165.628330,08827-Oct-200614:35x86
Msfpccom.dll4.0.2165.6283,543,40027-Oct-200614:35x86
Msfpcui.dll4.0.2165.6282,142,56827-Oct-200614:35x86
Ratlib.dll4.0.2165.62839,27227-Oct-200614:35x86
Msfpcsnp.dll4.0.2165.6283,574,63227-Oct-200614:35x86
Mspadmin.exe4.0.2165.628233,32027-Oct-200614:35x86
Msphlpr.dll4.0.2165.628375,65627-Oct-200614:35x86
Mspmon.dll4.0.2165.62852,58427-Oct-200614:35x86
Mspmsg.dll4.0.2165.628230,76027-Oct-200614:35x86
Rpcfltr.dll4.0.2165.628135,52827-Oct-200614:35x86
Socksflt.dll4.0.2165.628100,20027-Oct-200614:35x86
W3filter.dll4.0.2165.628736,61627-Oct-200614:35x86
Wspsrv.exe4.0.2165.628945,51227-Oct-200614:35x86
Linktranslation.dll4.0.2165.628124,77627-Oct-200614:35x86
Radiusauth.dll4.0.2165.62866,40827-Oct-200614:35x86

套用 Hotfix 後的安裝資訊

套用此 Hotfix 後,您必須設定上游 ISA Server 電腦,使其僅在使用 Windows 整合式驗證時傳回 NTLM 驗證標頭。

注意 這項設定是 ISA Server 的全域設定。此指令碼會變更針對正向和反向 Proxy 要求 (Web Proxy 和 Web 發佈接聽程式) 所傳回的驗證標題。

若要讓我們幫您設定上游 ISA Server 電腦,以在使用 Windows 整合式驗證時傳回 NTLM 驗證標題,請前往<為我修正此問題>一節。如果您想要自行修正這個問題,請前往<讓我自行修正此問題>一節。

為我修正此問題

如果要自動修正此問題,請按一下 [修正此問題] 連結,然後按一下 [檔案下載] 對話方塊中的 [執行],並依照精靈中的步驟執行。

修正此問題
Microsoft Fix it 50482

注意 此精靈只提供英文版本。不過,自動修正程式也適用於 Windows 的其他語言版本。

注意 如果您不在發生問題的電腦上,則可將自動修正程式儲存至快閃磁碟機或 CD,然後在發生問題的電腦上加以執行。

讓我自行修正此問題

若要自行設定上游 ISA Server 電腦,以在使用 Windows 整合式驗證時傳回 NTLM 驗證標題,請遵循下列步驟執行下文中的 Microsoft Visual Basic 指令碼:
  1. 按一下 [開始],指向 [程式集][附屬應用程式],然後按一下 [記事本]
  2. 複製下列程式碼,然後貼在 [記事本] 中。
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    '
    ' Copyright (c) Microsoft Corporation.All rights reserved.
    ' THIS CODE IS MADE AVAILABLE AS IS, WITHOUT WARRANTY OF ANY KIND.THE ENTIRE
    ' RISK OF THE USE OR THE RESULTS FROM THE USE OF THIS CODE REMAINS WITH THE
    ' USER.USE AND REDISTRIBUTION OF THIS CODE, WITH OR WITHOUT MODIFICATION, IS
    ' HEREBY PERMITTED.
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' This script sets authentication schemes that ISA will return for Integrated authentication.
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    
    const USE_ONLY_NTLM_FOR_WINDOWS_AUTH_default = 0 ' Use Negotiate and Kerberos, too.
    const USE_ONLY_NTLM_FOR_WINDOWS_AUTH_Always  = 1
    
    Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"
    Const SE_VPS_NAME = "UseOnlyNTLMForWindowsAuth"
    Const SE_VPS_VALUE = 1
    
    Sub 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 If
    
    End Sub
    
    Sub CheckError()
    
    If Err.Number <> 0 Then
    WScript.Echo "An error occurred:0x" & Hex(Err.Number) & " " & Err.Description
    Err.Clear
    End If
    
    End Sub
    
    SetValue
    
  3. 將此「記事本」檔案儲存為 UseOnlyNTLMforWindowsAuth.vbs。
  4. 按兩下 .vbs 檔案以執行指令碼。
注意 若要回復成預設的驗證設定,請將 SE_VPS_VALUE 變更為 0,然後重新執行指令碼。

狀況說明

Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。

其他相關資訊

在上游伺服器中啟用這項 Hotfix 後可能會發生另一個問題。 如需詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
938465? (http://support.microsoft.com/kb/938465/ ) 當您在執行 ISA Server 2004 的上游伺服器中啟用 Hotfix 927265 之後,在嘗試透過下游伺服器存取網站時會出現錯誤訊息:「502 Proxy 錯誤」


如需有關軟體更新術語的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
824684? (http://support.microsoft.com/kb/824684/LN/ ) 說明用來描述 Microsoft 軟體更新的標準術語

這篇文章中的資訊適用於:
  • Microsoft Internet Security and Acceleration Server 2006 Standard Edition
  • Microsoft Internet Security and Acceleration Server 2006 Enterprise Edition
  • Microsoft Internet Security and Acceleration Server 2004 Enterprise Edition
關鍵字:?
kbautohotfix kbexpertiseadvanced kbbug kbfix kbqfe kbfixme kbmsifixme KB927265
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。