IIS 會驗證瀏覽器用戶端

本文介紹 IIS 如何驗證瀏覽器用戶端。

原始產品版本: Ie
原始 KB 編號: 264921

摘要

本文說明 IIS 中適用於 Windows NT 4.0、Windows 2000 和更新版本 Windows 的不同驗證方法。 如需本文所討論資訊的更完整描述,請參閱 Windows NT 4.0 和 Windows 2000 資源指南。

適用於 Windows NT 4.0 的驗證方法

匿名 - 不需要登入,而且任何人都可以存取使用此方法保護的數據。 根據預設,伺服器會使用內建帳戶 (IUSR_[計算機名稱]) 來控制檔案的許可權。 瀏覽器不會傳送任何具有這種要求類型的認證或用戶資訊。

  • 支援的瀏覽器:任何
  • 限制:無
  • 需要用戶權力:伺服器上定義的匿名用戶帳戶必須具有 本機登 入許可權。
  • 加密類型:無

基本 (清除文字) - 伺服器會要求使用者登入,而對話框會出現在瀏覽器中,讓使用者輸入所需的認證。 這些認證必須符合用戶嘗試存取之檔案上定義的用戶認證。

  • 支援的瀏覽器:任何
  • 限制:不安全。 密碼很容易被解密。
  • 需要用戶權力:用戶帳戶必須具有 本機登 入許可權。
  • 加密類型:Base 64 Encoding (不是 true 加密)

Windows NT 挑戰/回應 - 伺服器要求使用者登入。 如果瀏覽器支援 Windows NT 挑戰/回應,則會在使用者登入時自動傳送使用者的認證。 如果使用者所在的網域與伺服器的網域不同,或使用者未登入,則會出現對話框來要求傳送認證。 Windows NT 挑戰/回應會使用演算法,根據使用者的認證和使用者所使用的計算機來產生哈希。 然後,它會將此哈希傳送至伺服器。 瀏覽器不會將用戶的密碼傳送至伺服器。

  • 支持的瀏覽器:Internet Explorer 3.01 版和更新版本

  • 限制:需要點對點連線。 通常,線路會在「401 未經授權」錯誤訊息之後關閉;不過,在交涉需要多次來回) (Windows NT 挑戰/回應驗證順序時,伺服器會在用戶端指出要使用 Windows NT 查問/回應之後,讓線路在序列的持續時間保持開啟。 CERN Proxy 和某些其他因特網裝置會防止此作業運作。 此外,Windows NT 挑戰/回應不支援雙躍點模擬, (在傳遞至 IIS 伺服器之後,就無法將相同的認證傳遞至後端伺服器進行驗證) 。

  • 用戶權力必要:存取伺服器的用戶帳戶必須具有「從網路存取這部計算機」許可權。

  • 加密類型:也未編碼的NTLM哈希演算法。

優先順序的順序: 當瀏覽器提出要求時,一律會將第一個要求視為匿名。 因此,它不會傳送任何認證。 如果伺服器不接受匿名 OR 如果伺服器上設定的匿名使用者帳戶沒有所要求檔案的許可權,IIS 伺服器會回應拒絕存 錯誤訊息,並使用下列其中一個案例傳送支援的驗證類型清單:

  • 如果 Windows NT 挑戰/回應是唯一支援的方法 (或匿名失敗) ,則瀏覽器必須支援此方法才能與伺服器通訊。 否則,它無法與伺服器交涉,而且使用者會收到 拒絕存取 錯誤訊息。
  • 如果 [基本] 是唯一支援的方法, (或 Anonymous 失敗) ,則瀏覽器中會出現對話方塊以取得認證,然後將這些認證傳遞至伺服器。 它會嘗試傳送這些認證最多三次。 如果全都失敗,瀏覽器就不會連線到伺服器。
  • 如果同時支援基本和 Windows NT 挑戰/回應,瀏覽器會決定要使用哪一種方法。 如果瀏覽器支援 Windows NT 挑戰/回應,則會使用此方法,而且不會回復為基本。 如果不支援 Windows NT 挑戰/回應,則瀏覽器會使用 Basic。

注意事項

  • 當您的瀏覽器使用 BasicNTLM 驗證建立與網站的連線時,它不會在與伺服器的會話的其餘部分回復為匿名。 如果您嘗試連線到僅在驗證后標示為匿名的網頁,則會拒絕您。 (Netscape) 可能會或可能不會保留 true。
  • 當 Internet Explorer 使用 BasicNTLM 驗證建立與伺服器的連線時,它會在會話期間傳遞每個新要求的認證。

適用於 Windows 2000 及更新版本的驗證方法

匿名 - 不需要登入,而且任何人都可以存取使用此方法保護的數據。 根據預設,伺服器會使用內建帳戶 (IUSR_[計算機名稱]) 來控制檔案的許可權。 瀏覽器不會傳送任何具有這種要求類型的認證或用戶資訊。

  • 支援的瀏覽器:任何
  • 限制:無
  • 需要用戶權力:伺服器上定義的匿名用戶帳戶必須具有「在本機登入」許可權。
  • 加密類型:無

基本 (清除文字) - 伺服器會要求使用者登入,而對話框會出現在瀏覽器中,讓使用者輸入所需的認證。 這些認證必須符合用戶嘗試存取之檔案上定義的用戶認證。

  • 支援的瀏覽器:任何
  • 限制:不安全。 密碼很容易被解密。
  • 需要用戶權力:用戶帳戶必須具有 本機登 入許可權
  • 加密類型:Base 64 Encoding (不是 true 加密)

摘要 - 伺服器會要求使用者登入,也會傳送用來加密密碼的 NONCE。 瀏覽器會使用 NONCE 來加密密碼,並將此密碼傳送至伺服器。 伺服器接著會加密自己的用戶密碼複本,並比較這兩者。 如果相符且使用者具有許可權,則會授與存取權。

  • 支持的瀏覽器:Internet Explorer 5 和更新版本
  • 限制:不像整合式一樣安全。 需要伺服器能夠存取已設定摘要式驗證的 Active Directory 伺服器。
  • 需要用戶權力:要求密碼必須有「將密碼儲存為加密的純文本」
  • 加密類型:以伺服器所傳送的 NONCE 為基礎。

Windows 整合式 (分成兩個子類別)

Kerberos - 伺服器要求使用者登入。 如果瀏覽器支援 Kerberos,則會發生下列狀況:

  • IIS 要求驗證。
  • 如果用戶端尚未登入網域,Internet Explorer 中會出現要求認證的對話框,然後連絡 KDC 要求並接收票證授與票證。 然後,它會將票證授與票證以及 IIS 伺服器的相關信息傳送至 KDC。
  • 如果 IE 用戶端已成功登入網域並收到票證授與票證,則會將此票證連同 IIS 伺服器的相關信息傳送至 KDC
  • KDC 會向用戶端發出資源票證。
  • 用戶端會將此票證傳遞給 IIS 伺服器。

Kerberos 會使用票證授權伺服器 (KDC) 產生的票證進行驗證。 它會將此票證傳送至 IIS 伺服器。 瀏覽器不會將用戶的密碼傳送至伺服器。

  • 支持的瀏覽器:Internet Explorer 5.0 版和更新版本
  • 限制:伺服器必須能夠存取 Active Directory 伺服器。 伺服器和客戶端都必須有 KDC 的信任連線。
  • 需要用戶權力:伺服器上定義的匿名用戶帳戶必須具有 本機登 入許可權。
  • 加密類型:加密票證。

Windows NT 挑戰/回應 - 伺服器要求使用者登入。 如果瀏覽器支援 Windows NT 挑戰/回應,則會在使用者登入時自動傳送使用者的認證。 如果使用者所在的網域與伺服器的網域不同,或使用者未登入,Internet Explorer 中會出現一個對話方塊,要求傳送認證。 Windows NT 挑戰/回應會使用演算法,根據使用者的認證和使用者所使用的計算機來產生哈希。 然後,它會將此哈希傳送至伺服器。 瀏覽器不會將用戶的密碼傳送至伺服器。

  • 支持的瀏覽器:Internet Explorer 3.01 版和更新版本。
  • 限制:需要點對點連線。 一般而言,線路會在「401 未經授權」錯誤訊息之後關閉;不過,在交涉 Windows NT 挑戰/響應驗證順序時, (需要多次來回行程) 時,伺服器會在用戶端指出要使用 Windows NT 查問/回應之後,讓線路在序列的持續時間保持開啟。 CERN Proxy 和某些其他因特網裝置會防止此作業運作。 此外,Windows NT 挑戰/回應不支援雙躍點模擬 (這表示一旦傳遞至 IIS 伺服器,就無法將相同的認證傳遞至後端伺服器進行驗證,例如,當 IIS 使用 Windows NT Challenge/Response 時,就無法使用 SQL 整合式安全性) ,向另一部計算機上的 SQL Server 資料庫驗證使用者。
  • 需要用戶權力:存取伺服器的用戶帳戶必須具有「從網路存取這部計算機」許可權。
  • 加密類型:也未編碼的NTLM哈希演算法。

優先順序的順序: 當瀏覽器提出要求時,一律會將第一個要求視為匿名。 因此,它不會傳送任何認證。 如果伺服器不接受匿名,或伺服器上設定的匿名用戶帳戶沒有所要求檔案的許可權,IIS 伺服器會回應拒絕存 錯誤訊息,並使用下列其中一個案例傳送支援的驗證類型清單:

  • 如果 Windows Integrated 是唯一支援的方法 (或 Anonymous 失敗) ,則瀏覽器必須支援此方法才能與伺服器通訊。 如果失敗,伺服器不會嘗試任何其他方法。
  • 如果 Basic 是唯一支援的方法 (或 Anonymous 失敗) ,則會在 中顯示對話方塊以取得認證,然後將這些認證傳遞至伺服器。 它會嘗試傳送認證最多三次。 如果全都失敗,瀏覽器就不會連線到伺服器。
  • 如果同時支援 Basic 和 Windows Integrated,瀏覽器會決定要使用哪一種方法。 如果瀏覽器支援 Kerberos 或 Windows NT 挑戰/回應,則會使用此方法。 它不會切換回基本。 如果不支援 Windows NT 挑戰/回應和 Kerberos,則瀏覽器會使用 Basic、Digest 或 Fortezza,如果它支持這些功能。 這裡的優先順序是 Basic、Digest 和 Fortezza。

注意事項

  • 當您的瀏覽器使用基本或 Windows 整合式驗證建立與網站的連線時,它不會在與伺服器的會話的其餘部分回復為匿名。 如果您嘗試連線到僅在驗證后標示為匿名的網頁,則會拒絕您。 (Netscape) 可能會或可能不會保留 true。
  • 當 Internet Explorer 使用 Anonymous 以外的驗證方法建立與伺服器的連線時,它會在會話期間自動傳遞每個新要求的認證。

參考資料

如需如何在 Windows Server 2003 中設定 IIS 網站驗證的詳細資訊,請參閱 如何在 Windows Server 2003 中設定 IIS 網站驗證