我正在研究 asp.net mvc 4 应用程序。目前,该应用程序已启用表单身份验证。但现在我想在同一个应用程序中实现 Windows 身份验证。场景是-当应用程序运行时,默认情况下会检查窗口身份验证,一旦通过身份验证,根据用户的角色,我需要启用表单身份验证。
以下是 web.config 中的设置-
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
<authentication mode="Windows">
</authentication>
<authorization>
<deny users="?" />
</authorization>
</system.web>
以下是登录控制器中的代码-
[AllowAnonymous]
[HttpPost]
public JsonResult JsonLogin(User model, string returnUrl)
{
var user = HttpContext.User.Identity.Name;
if (ValidateUser(model))
{
FormsAuthentication.SetAuthCookie(model.LoginUserID, false);
return Json(new { success = true, redirect = returnUrl });
}
return Json(new { errors = GetErrorsFromModelState() });
}
但我得到 User.Identity.Name = ""; 我错过了什么?我想在本地系统本身上运行应用程序。请告诉我如何实现这个场景。任何帮助表示赞赏!提前致谢!