在 IIS 中的 HTTP 401 錯誤疑難排解

文章編號: 907273 - 檢視此文章適用的產品。
IIS Support Voice 資料行

在 IIS 中的 HTTP 401 錯誤疑難排解

若要自訂這個資料行,您的需求,我們會想要邀請您送出您的想法,寄件者與您要查看的問題,有興趣的主題的相關處理未來知識庫文件和 Support Voice 資料欄。您可以送出您的想法和意見反應的使用 向詢問 表單。此外,還有在本篇文章下方表格的連結。
全部展開 | 全部摺疊

在此頁中

簡介

嗨。我的名字是 Lou Prete。我 Microsoft 已被支援網際網路資訊服務 (IIS) 設定為過去五年來已經通過 IIS在過去兩年內的內容負責人。

HTTP 401 錯誤,共有最常見的錯誤,您可能要在 IIS 中處理。這些而造成的原因錯誤的差異甚大,原因可以分成有限數量的類別。確實識別您的 HTTP 401 錯誤原因的類別可以減少識別根本原因的所需的時間量發生錯誤。

移難排解這些問題的絕佳工具會驗證和存取控制診斷或 AuthDiag。您可以下載這個工具下列 Microsoft 下載中心 」 網站:
http://www.microsoft.com/downloads/details.aspx?FamilyID=e90fe777-4a21-4066-bd22-b931f7572e9a&DisplayLang=en
這個工具也是您可以與 IIS 診斷工具組的一部分從下列 Microsoft 下載中心 」 網站下載:
http://www.microsoft.com/downloads/details.aspx?FamilyID=9bfa49bc-376b-4a54-95aa-73c9156706e7&DisplayLang=en
在本篇文章中所述的幾乎所有情況下,AuthDiag 可以:可以快速地的回答,手邊的 HTTP 401 錯誤。

在本專欄中,我會概述有效的方法,來識別和修正一般HTTP 401 錯誤所導致的問題。我也會指出的數字將會非常有用的微軟知識庫文件和許多工具有助於您爾之路。

疑難排解步驟

識別 HTTP 401 錯誤的子狀態碼

有兩種常見的方式,來識別子狀態碼:
  • 開始在 IIS 6.0 中,子狀態碼已登入網頁記錄檔。網頁記錄檔位於下列位置:
    %SYSTEMROOT%\System32\LogFiles\W3SVC###\
    在 [網頁記錄檔中,每個項目中的最後三個的數字表示狀態 」、 「 子狀態,以及 「 Win32 狀態 」。
    #Fields: date time s-sitename s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-Sub-status sc-win32-status
    2006-03-06 20:37:42 W3SVC1 192.168.1.101 GET /default.aspx - 80 - 192.168.17.45 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727;+InfoPath.1) 401 2 2148074254
    2006-03-06 20:37:42 W3SVC1 192.168.1.101 GET /default.aspx - 80 - 192.168.17.45 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727;+InfoPath.1) 401 1 0
    2006-03-06 20:38:36 W3SVC1 192.168.1.101 GET /default.aspx - 80 DOMAIN\user 192.168.17.45 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727;+InfoPath.1) 200 0 0
  • 在 IIS 的版本早於 IIS 6.0 中,子狀態碼沒有登入網頁的記錄檔中。在這些情況下 (或在不需要的情況下存取網頁的記錄檔) 時,您可以使用傳送回瀏覽器的資訊。在 Microsoft Internet Explorer 中,您必須先停用 顯示易懂的 HTTP 錯誤訊息 正在設定。您應該使用這項變更,會看到類似下列的錯誤網頁。如此一來,我們有 HTTP 401.2錯誤,且分頁甚至都會提供何種錯誤的概要說明表示:
    您沒有被授權檢視此頁面

    您沒有檢視這個目錄或網頁使用的權限因為在傳送您的 Web 瀏覽器,您提供的認證WWW 驗證標頭欄位的 Web 伺服器未設定為接受。

    請嘗試下列方法:
    請連絡網站如果您認為您的系統管理員應該可以瀏覽此目錄或頁面。
    按一下 [重新整理] 按鈕,再試一次具有不同認證。

    HTTP 錯誤 401.2-未經授權: 因為以下原因,被拒絕存取伺服器設定。網際網路資訊服務 (IIS)

    技術資訊 (供支援人員)
    移至 Microsoft 產品支援服務服務,並執行文字的 [HTTP] 及 [401 標題搜尋。
    開啟 IIS幫助,也就是在 IIS 管理員 (inetmgr),並搜尋主題中存取其標題為關於安全性、 驗證以及相關的自訂錯誤訊息。
附註您也可以使用工具,例如 WFetch 」 和 「 網路監視器 」,蒐集的子狀態碼。 如需有關這些工具,按一下下列文件編號,檢視中的文件Microsoft 知識庫 」:
284285如何疑難排解 「 HTTP 連線中使用 Wfetch.exe
812953 如何使用網路監視器擷取網路流量

基本疑難排解的子狀態碼

一旦您知道 HTTP 的子狀態碼,專注於相關的問題該特定的子狀態。您可以忽略其他所有服務。
HTTP 401.1: 拒絕無效的使用者憑證
描述

IIS 無法執行要求的使用者登入。所有不論是否要求,要求必須要有一位使用者,匿名的。

常見的原因
  • 會提供錯誤的使用者名稱或密碼。識別如果使用者無法登入,並更正的使用者名稱或密碼。
  • Kerberos 驗證失敗。 如需詳細資訊,請按一下下面的文章編號,檢視 「 Microsoft 知識庫 」 中:
    326985如何疑難排解與 Kerberos 相關的問題,在 IIS 中
    其他有用的 Kerberos 文件是做為如下所示:
    871179 您會收到 「 HTTP 錯誤 401.1-未經授權: 因為認證不正確,所以拒絕存取 」 錯誤訊息的時機您嘗試存取網站,IIS 6.0 應用程式集區的一部份
    設定應用程式集區身分識別與 IIS 6.0 (IIS 6.0)
    http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/f05a7c2b-36b0-4b6e-ac7c-662700081f25.mspx

    整合式的 Windows 驗證 (IIS 6.0)
    http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/523ae943-5e6a-4200-9103-9808baa00157.mspx

    設定有限的委派的 Kerberos (IIS 6.0)
    http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/df979570-81f6-4586-83c6-676bb005b13e.mspx
  • 本機或網域原則] 或 [使用者權限指派防止使用者存取伺服器。如果伺服器設定為稽核登入失敗後,可能有安全性記錄檔中的其他資訊。請參閱以下文章中的必要的使用者權限:
    812614 預設權限及 IIS 6.0 的使用者權限
    271071 如何設定 IIS 5.0 Web 伺服器所需的 NTFS 權限和使用者權限
    832981 安全性事件記錄檔已滿時,使用者無法存取網站
    300549 如何啟用與套用安全性稽核在 Windows 2000 中
  • 匿名存取時,可能也會發生此錯誤設定。如果可能發生的使用者名稱 」 或 「 匿名密碼儲存在 IIS metabase 中的帳戶不同於實際的資訊儲存在本機使用者資料庫 (或 Active Directory 目錄服務,如果是網域帳戶會使用)。重設密碼的帳戶,並在 IIS 中解決這個問題。
  • 升級後執行 IIS 5.0 到 IIS 6.0 中,IIS 的伺服器在 IIS 5.0 相容性模式執行中。一旦伺服器切換至 IIS6.0 隔離模式中,您可能會看到一個 HTTP 401.1 錯誤匿名要求。這發生是因為 IIS 5.0 匿名密碼同步處理。若要解決這個問題AnonymousPasswordSync中繼資料庫機碼設為 false,問體和重設匿名的使用者密碼的帳戶,然後在IIS。
  • 如需詳細資訊有關此錯誤,按一下下面的文件編號,檢視文 「 Microsoft 知識庫 」 中的文件:
    896861當您瀏覽的網站使用整合式驗證 」 且裝載在 IIS 5.1 或 IIS 6 上時,收到 401.1 錯誤
    304201 無法的存取 Web 網站,或無法啟動 IIS 的服務在非本機系統帳戶,並使用 Windows 驗證,iis 下執行
    263140 當您連線到 IIS 5.0,網域控制站上,驗證及基本驗證失敗
HTTP 401.2: 拒絕伺服器組態
描述

在用戶端瀏覽器與 IIS 無法同意驗證通訊協定。

常見的原因
  • 是 (包括匿名) 的驗證通訊協定在 IIS 中的選取。您必須選取至少一個驗證類型。 如需詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中:
    253667錯誤訊息: 未授權的 HTTP 401.2-: 登入失敗,因為使用不需驗證的伺服器設定
  • 已啟用整合的驗證,及更早]、非 Internet Explorer 的用戶端瀏覽器會嘗試存取網站。發生這種情況因為用戶端瀏覽器無法執行整合式的驗證。如果要解決這個問題,請使用下列方法之一:
    • 將 IIS 設定為接受 「 基本驗證。這應該只發生透過 SSL 安全上的考量。
    • 使用用戶端瀏覽器能夠執行整合式驗證驗證。Internet Explorer 以及 Netscape Navigator 的最新版本,Mozilla 要在 Firefox 可以執行整合式的驗證。
  • 整合式的驗證是透過 proxy。發生這種情況因為 proxy 並不會維護 NTLM 驗證的連接,因此從用戶端的匿名要求傳送至伺服器中。如果要解決的選項這個問題如下所示:
    • 將 IIS 設定為接受 「 基本驗證。這應該只發生透過 SSL 安全上的考量。
    • 請不要使用 proxy。
資源的 ACL 所拒絕的 HTTP 401.3:
描述

會傳回這個錯誤時使用者成功驗證到伺服器,但沒有 NTFS 權限給使用者。要求的內容。

常見的解決方案
  • 內容的正確設定 NTFS 權限。檢閱在下列的文件中 「 NTFS 權限 」 一節:
    812614 預設權限及 IIS 6.0 的使用者權限
    271071 如何設定 IIS 5.0 Web 伺服器所需的 NTFS 權限和使用者權限
  • 確認已設定正確的驗證方法。針對範例中,當您使用整合式的驗證,都不提示使用者輸入驗證認證。在此情況下,可能會不清楚如果要求驗證與否。
  • 如果內容位於遠端共用,請確認使用者有足夠的 NTFS 和共用權限。 如需詳細資訊,按一下下面的文章編號,檢視在 Microsoft 中眭舑:
    332142在 UNC 共用上的內容的 NTLM 要求可能會傳回 401 錯誤訊息
自訂的 ISAPI 篩選器 」 所拒絕的 HTTP 401.4:
描述

已載入的 ISAPI 篩選器拒絕的要求。

方案

找出哪一個 ISAPI 篩選器拒絕的要求,並請連絡程式開發人員或廠商,以決定解決方案。
自訂的 ISAPI/CGI Web 應用程式拒絕 HTTP 401.5:
描述

ISAPI 擴充程式或拒絕的 CGI 應用程式要求。

方案

找出哪一個 ISAPI 擴充程式或拒絕的 CGI 應用程式要求,以及如何連絡程式開發人員或廠商,以決定解決方案。

摘要

總之,當您執行疑難排解 HTTP 401 錯誤,第一個步驟永遠應該以判斷子狀態碼。
  • 401.1: 已在嘗試執行,但無法驗證。
  • 401.2: 因為,所以未嘗試驗證伺服器與用戶端無法同意一個驗證通訊協定。
  • 401.3: 驗證成功,但該帳戶,驗證並沒有足夠的權限來存取要求資源或內容。
  • 401.4: ISAPI 篩選器拒絕的要求。
  • 401.5: ISAPI 延伸或拒絕的 CGI 應用程式要求。

有用的工具與資源

Microsoft 工具

協力廠商工具

到下一個階段,謝謝您的時間,並祝您愉快。同樣的請隨意送出您想要處理在未來的想法主題資料行或眭舑使用 向詢問 表單。

Microsoft 提供可協助您的第三方連絡資訊尋找技術支援。這份連絡資訊可能會變更且不另行通知。Microsoft 不保證此第三方連絡人的正確性資訊。

本文將告訴您的協力廠商產品Microsoft 無關的製造公司。Microsoft 發佈沒有擔保、 默示或其他的效能或可靠性有關這些產品。

屬性

文章編號: 907273 - 上次校閱: 2013年3月29日 - 版次: 4.0
這篇文章中的資訊適用於:
  • Microsoft Internet Information Services 6.0
  • Microsoft Internet Information Server 1.01
關鍵字:?
kbhowto kbinfo kbmt KB907273 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:907273
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見