ASP.NET混合身份验证

use*_*331 8 c# asp.net authentication forms-authentication windows-authentication

我有2个应用程序,一个是表单身份验证,看起来像这样:

<authentication mode="Forms">
        <forms loginUrl="~/Login"></forms>
      </authentication>

public class LoginController : Controller
    {
        public ActionResult Index()
        {
            return View();
        }

        public ActionResult LoginCheck()
        {

            string username = Request.Form["username"];

            FormsAuthentication.RedirectFromLoginPage(username, true);

            return RedirectToAction("Index", "Home");
        }
    }
Run Code Online (Sandbox Code Playgroud)

另一个应用程序是空的但使用Windows身份验证:

<authentication mode="Windows" />

public class HomeController : Controller
    {
        public ActionResult Index()
        {
            ViewBag.Title = "Home Page";

            return View();
        }
    }
Run Code Online (Sandbox Code Playgroud)

我想要做的是以下内容:

  1. 用户在表单身份验证应用程序中填写用户名和密码,然后单击"提交"

  2. LoginCheck方法获取用户名和密码,并针对Windows身份验证应用程序进行身份验证

我希望我从Windows身份验证应用程序得到回复,说是这个用户名和密码是正确的,继续或不是他们不工作

我是否正确地想要完成什么?我的问题是我不知道如何完成第2部分,如果有人可以帮助我,这将是惊人的或指向我正确的方向.

Mvd*_*vdD 1

使用集成 Windows 身份验证 ( IWA ) 时,您的浏览器应使用您的 Windows 凭据自动登录到网站。

您可以检查以下几项内容:

  • 您的浏览器支持 IWA 吗?
  • 您的浏览器和站点之间是否有 HTTP 代理?
  • 您的计算机是否已登录到托管您的站点的 Windows 域?
  • IE 设置是否指定提示输入凭据? 在此输入图像描述

另请参阅此问题的答案以获取更多建议。