客戶端無法匿名訪問位于win2000域控制器上的IIS
客戶端無法匿名訪問位于win2000域控制器上的IIS這兩天在公司的win2000 域控制器上安裝了一個IIS5,客戶端無法通過匿名訪問,必須要輸入用戶名和密碼才可以訪問,網(wǎng)站的匿名訪問已經(jīng)啟用。但是
客戶端無法匿名訪問位于win2000域控制器上的IIS
這兩天在公司的win2000 域控制器上安裝了一個IIS5,客戶端無法通過匿名訪問,必須要輸入用戶名和密碼才可以訪問,網(wǎng)站的匿名訪問已經(jīng)
啟用。但是這個網(wǎng)站如果放在一臺單獨的服務(wù)器上客戶端就可以匿名訪問,由此斷定應(yīng)該是win2000如果作為域控制器的問題,有可能對IIS的
策略產(chǎn)生了變化。
在微軟網(wǎng)站上找到了如下內(nèi)容:
IIS 身份驗證
許多分布式應(yīng)用程序的重要部分是標(biāo)識某個人(稱為主體或客戶端)并控制客戶端對資源的訪問能力。身份驗證是驗證客戶端身份的行為。一
般情況下,客戶端必須提供某些證據(jù),一般稱為憑據(jù),來證明其身份。通常,憑據(jù)包括用戶名和密碼對。Internet 信息服務(wù) (IIS) 和
ASP.NET 都提供幾種身份驗證方案。
IIS 提供多種身份驗證方案:
1.匿名(默認情況下啟用)
2.基本
3.摘要式
3.集成 Windows 身份驗證(默認情況下啟用)
5.客戶證書映射
無論選擇哪個方法,在驗證客戶端身份后,IIS 都會將安全標(biāo)記傳遞給 ASP.NET。如果將 ASP.NET 配置為使用 Windows 身份驗證并啟用模擬
,ASP.NET 將模擬此安全標(biāo)記代表的用戶。
匿名
匿名身份驗證可使用戶訪問 Web 站點的公共區(qū)域,不提示用戶輸入用戶名和密碼。盡管作為身份驗證方案列出,但因為不要求客戶端提供任何
憑據(jù),所以它并不進行任何技術(shù)性的客戶端身份驗證。相反,IIS 使用特定用戶帳戶 (IUSR_machinename) 將存儲好的憑據(jù)提供給 Windows。
默認情況下,IIS 控制此帳戶的密碼。IIS 是否控制該密碼會影響匿名用戶的權(quán)限。當(dāng) IIS 控制該密碼時,子身份驗證 DLL (iissuba.dll)
使用網(wǎng)絡(luò)登錄驗證用戶身份。此 DLL 的功能是驗證 IIS 提供的密碼并通知 Windows 該密碼有效,于是驗證該客戶端。然而,它并不真的向
Windows 提供密碼。當(dāng) IIS 不控制密碼時,IIS 調(diào)用 Windows 中的 LogonUser() API 并提供帳戶名、密碼和域名,以使用本地登錄進行登錄
。登錄后,IIS 緩存安全標(biāo)記并模擬該帳戶。本地登錄可使匿名用戶訪問網(wǎng)絡(luò)資源,而網(wǎng)絡(luò)登錄不可以。
當(dāng)啟用匿名身份驗證時,IIS 不使用其他任何身份驗證方案,除非 NTFS 權(quán)限拒絕訪問資源。
優(yōu)點
提供最佳性能,這是因為匿名身份驗證不需要任何系統(tǒng)開銷。
不需要管理個人用戶帳戶。
如果 IIS 不控制密碼,可以訪問網(wǎng)絡(luò)資源。
缺點
不能逐個對客戶端進行身份驗證。
如果 IIS 不控制密碼,帳戶必須有本地登錄能力。
以上這段話對IIS的匿名訪問做了說明,但是對解決目前的問題幫助不大,在其英文網(wǎng)站發(fā)現(xiàn)這么一段話,http://www.microsoft.com/windows2000/en/server/iis/defaul