当身份验证模式为“windows”时,我正在尝试在 MVC 中进行 customAuthorization
public override void OnAuthorization(AuthorizationContext filterContext)
{
#region if
if (HttpContext.Current.User.Identity.IsAuthenticated)
{ .......}
}
但总是 IsAuthenticated 返回 false。我不知道如何在 onAuthorization(..) 之前调用 Windows 身份验证。
但是当我这样做时:
public override void OnAuthorization(AuthorizationContext filterContext)
{
#region if
if (HttpContext.Current.User.Identity.IsAuthenticated)
{ .......}else{
**base.OnAuthorization(filterContext);**
}
}
由于 base.onAuthorization() 的原因,onAuthorization() 方法重复命中,并且在第二次尝试中 IsAuthenticated 返回 true。
我可以知道这种行为的原因吗?
当我用谷歌搜索结果时说 IsAuthenticated 在表单身份验证模式下将是真的,但在 Windows 模式下不会。如以下链接所述
http://www.anujvarma.com/windows-ad-authentication-and-the-authorize-attributelogin-popup/
请帮我。