是否有一种在使用Windows身份验证的MVC Web应用程序上实施双因素身份验证的好方法?
我看到的示例显示了如何在基于窗体的MVC应用程序上实现2-Factor,但找不到基于Windows的MVC应用程序。
任何帮助将不胜感激!
答案 0 :(得分:1)
2因素在Windows Auth的上下文中没有意义。该应用程序由用户的域帐户授权。安全方面在于域端,而不是应用程序端。
但是,如果你这样做了,你实际上无法使用Windows Auth。我知道,这听起来有些矛盾。您必须如何处理这种情况是使用基于应用程序的身份验证,例如身份,因此Web应用程序本身将保留用户帐户。然后,您可以通过直接连接到LDAP进行身份验证。换句话说,你必须自己设置这一切;没有简单的设置,忘记就像你使用Windows Auth。使用Identity之类的东西,您可以实现双因素身份验证,因此您可以在那里获得成功。但是,您无需通过应用程序的数据库和用户验证密码,而是通过LDAP进行身份验证。
这在使用AD的企业级应用程序中非常常见。通常,他们会有一个脚本,您可以作为应用程序的使用者运行,以定期从AD更新应用程序的用户数据库,因此所有具有相同详细信息的用户都存在于这两个位置,除了密码,它只与AD保持一致。这样,应用程序可以将自己的数据与其用户副本相关联,但身份验证和授权仍然在AD级别进行。