我目前正在嘗試從Windows Server 2000和IIS5遷移到Windows Server 2008和IIS7的傳統ASP應用程序。此應用程序的身份驗證使用ISAPI篩選器。除了一個問題外,應用程序和ISAPI篩選器都在新環境中工作。有問題的應用程序被設置爲根應用程序(如通過訪問http://hostname/application.asp訪問它)。如果我通過聲明的URL訪問它,它會詢問我的身份驗證詳細信息,ISAPI篩選器會通過正確的登錄詳細信息,然後執行其操作。然後我將一個默認文檔添加到IIS7以指向application.asp。現在,如果我通過訪問http://hostname訪問應用程序,ISAPI篩選器會傳遞錯誤的登錄詳細信息。當它調用ISAPI篩選器並具有通常保持在身份驗證對話框中輸入的值pszUser財產模糊IIS7 ISAPI篩選器問題
DWORD CMyISAPIFilter::OnAuthentication(CHttpFilterContext* pCtxt, PHTTP_FILTER_AUTHENT pAuthent)
在這裏面,pAuthent對象被通過IIS中:ISAPI篩選器實現了這個方法。就我而言(通過使用默認文檔條目訪問網站時),pszUser屬性保存運行應用程序池的Windows帳戶的值。爲了清楚起見,如果我輸入application.asp部分,則ISAPI篩選器將傳遞正確的值。
我很困惑這個問題,並沒有線索如何解決它。爲了解決這個問題,我無法真正重建/修改ISAPI篩選器,並且在涉及到IIS管理時,我已經是初學者了。
我還發現如果IIS沒有安裝默認文檔功能,身份驗證將起作用。如果沒有這個功能,默認文檔不會工作(自然),但是驗證會。只有在添加了認證中斷的默認文檔功能之後。
感謝您的幫助!
感謝您的回答。我認爲你想描述的實際上是配置IIS5,而我試圖從IIS7移開。我在IIS7界面中看不到DirectorySecurity選項卡 – Sevas 2010-08-25 11:39:53