Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ASP.NET Mixed Authentication

I have 2 applications, one is Forms Authentication and looks like so:

<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");
        }
    }

The other application is empty but is using Windows Authentication:

<authentication mode="Windows" />

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

            return View();
        }
    }

What I am trying to do is the following:

  1. The user fills in their username and password in the forms authentication application and clicks submit

  2. The LoginCheck method, takes the username and password and authenticates against the application that is Windows Authentication

I am in hopes that I get a response from the Windows Authentication Application saying yes this username and password is correct, proceed or no they didn't work

Am I on the right track on what I want to accomplish? My problem is I have no idea how to accomplish part 2, if someone could help me out that would be amazing or point me in the right direction.

like image 915
user979331 Avatar asked Sep 15 '15 20:09

user979331


2 Answers

If you don't have to use the second application for other reasons I would suggest to use another way to verify the credentials.

Example: https://stackoverflow.com/a/499716/5036838

After the credentials are verified you could use any sort of cookie/based authentication to proceed.

like image 172
M. Altmann Avatar answered Sep 28 '22 05:09

M. Altmann


When using Integrated Windows Authentication (IWA), your browser should use your Windows credentials to log you on to the web site automatically.

Here are a number of things you may check:

  • Does your browser support IWA?
  • Is there an HTTP proxy between your browser and site?
  • Is your machine logged on to the Windows domain in which your site is hosted?
  • Does the IE setting specify to prompt for credentials? enter image description here

See also the answers to this question for more suggestions.

like image 44
MvdD Avatar answered Sep 28 '22 05:09

MvdD