我正在构建一个需要多种身份验证方式的Web应用程序。
所有用户都有一个类型,指示使用何种类型的身份验证。有两种类型:
- 内部用户。用户使用存储在DB中的凭据进行身份验证。
- LDAP用户。用户通过LDAP进行身份验证。
有没有办法只使用其中一种取决于用户类型?
我看到您可以向身份验证管理器添加多个身份验证提供程序,但这样就可以对用户进行所有身份验证。
更新
情况如下:
- 我有一个包含应用程序所有用户的数据库。如果用户是"内部用户"类型,密码与用户的其他数据一起存储在DB中。否则,如果用户类型是" LDAP用户"密码不存储在数据库中,因为我要询问LDAP,但其他数据类型在数据库中。这是一个必备的应用程序。
- 现在,我已经为"内部用户"实施了身份验证提供程序。类型。我使用用户名在数据库中搜索用户,如果存在,我获取类型,如果是"内部用户"使用存储在数据库中的密码检查密码。
醇>
问题是,如何通过用户类型在执行时间中选择身份验证提供程序?