2011-06-06 111 views
0

我是IIS 7.5的新手,我嘗試使用Windows身份驗證獲取網站。這是一個ASP.NET 4.0應用程序,它被設置爲默認網站下的應用程序,並運行ASP.NET 4應用程序池。應用程序設置爲禁用匿名身份驗證並啓用Windows身份驗證。IIS 7.5中的Windows身份驗證問題

站點未驗證正確 - 我可以看到在事件日誌中的錯誤(這是一個錯誤Null Reference做與使用Context.User一些代碼),並詳細說IsAuthenticated=FalseUser是空白。

我在我的Web.config中設置了Authentication Mode = Windows下的<system.web>,並嘗試了各種其他配置設置,但都沒有成功。

我使用ASP.NET經典的應用程序池,但得到一個錯誤

試圖

處理程序「ExtensionlessUrl-ISAPI-4.0_64bit」有一個不好的模塊在其模塊列表

「IsapiModule」

我寧願得到它的工作使用ASP.NET 4應用程序池如果可能的話。任何人都可以提醒我需要做什麼?

回答

1

對不起,我忘了張貼的答案時,我發現它。實際上,身份驗證配置沒有任何問題,它是在Global.asax中過早引用Context.User。

在新的集成模式中,身份驗證與傳統模式的工作方式不同,在Global.asax中的Application_AuthenticateRequest事件中,身份驗證尚未發生,因此Context.User爲空,因此我得到的例外情況以及日誌顯示的事實被認證爲假。我將調用Context.User的代碼行移入Application_PostAuthenticateRequest中,現在它正在工作。

+1

標誌這是答案嗎? – Rory 2013-01-10 00:34:54

+1

您應該將其標記爲答案,並閱讀本文以瞭解有關IIS集成管道更改的更多信息,http://www.iis.net/learn/application-frameworks/building-and-running-aspnet-applications/aspnet-20 -breaking-變化-ON-IIS – 2013-08-09 08:29:20