环境是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