環境是IIS 7集成管道,ASP.NET 4.0。我配置了.aspx頁面中沒有匿名身份驗證和Windows身份認證:Windows身份驗證成功,但IsAuthenticated == false
當我請求的頁面,一個普通的Windows身份驗證(NTLM /協商)質詢響應情況,並最終返回頁面。
我有一個處理PostAuthorize事件的HttpModule。正如預期的那樣,只有挑戰 - 響應認證成功並授權訪問頁面時纔會引發此事件。
但是,Request.IsAuthenticated屬性爲false;和HttpContext.Current.User.Identity反映了未經身份驗證的用戶(.Name返回空字符串)。有趣的是,Request.ServerVariables [「LOGON_USER」]確實會返回經過身份驗證的Windows用戶的值。
我一直認爲,一旦用戶通過了認證(並獲得授權,就此而言),請求將反映被認證;並且該請求的用戶/身份將被正確設置。
有關爲什麼不是這種情況的任何想法?
感謝,
甄子丹
啓用模擬並查看您得到的內容。 – 2010-06-29 15:31:25