MVC 5 中的身份验证

Authentication in MVC 5

我正在构建一个应该由企业用户使用的 ASP.NET MVC 5 Web 应用程序。 当他们在企业网络内部时,应该通过 Windows 身份验证自动进行身份验证。当他们从公司网络外部调用应用程序时,比方说手机 phone,他们应该被重定向到一个登录页面,在那里他们可以根据 Active Directory 进行身份验证。 我尝试过不同的东西,但到目前为止还没有成功。 我尝试的最后一件事是使用以下配置创建身份验证过滤器:

IIS 中的 Web 应用程序设置:身份验证 = Windows 身份验证 Web.Config设置:认证模式=Windows

在网络内部这工作正常。但是当我尝试从外部进行身份验证时,我会在 AuthenticationFilter 被命中之前收到身份验证请求。

在第二次尝试中,我尝试了以下设置:

IIS 中的 Web 应用程序设置:身份验证 = Windows 身份验证 + 匿名 Web.Config设置:认证模式=Windows

使用此设置,当我从网络内部调用该站点时,AuthenticationFilter 被命中两次。第一次使用匿名身份验证,第二次使用我登录的真实用户。

有没有办法配置订单验证发生或任何其他方式来处理这两种情况?

我现在已经使用这种方法来实现基于表单的身份验证: http://www.schiffhauer.com/mvc-5-and-active-directory-authentication/