OWIN的混合身份validation

我有两种validation用户:

  1. 如果他们是内部用户,我们通过Windows的活动目录进行身份validation
  2. 如果他们在网站上注册,则通过表单身份validation进行身份validation

在MVC 3/4中,我能够通过实现自定义成员资格提供程序和自定义角色提供程序来实现此目的。

在使用OWIN和Identity的MVC 5中是否可以实现,如何实现?

本质上,混合模式是具有Windows身份validation入口点的表单身份validation,一旦用户通过它,就会发生正常的表单身份validation流程。

在Katana中启用Windows身份validation

Katana目前不提供用于Windows身份validation的OWIN中间件,因为此function已在服务器中提供

因此,要使Windows身份validation起作用,我必须依赖其中一个提供的主机, IIS自主机( System.Net.HttpListener

我做了一个解决方案,使它看起来像一个外部提供者,将窗口身份映射为外部登录。

混合认证

源代码: https : //github.com/MohammadYounes/MVC5-MixedAuth