Spring Security - 多个身份验证管理器,但只使用一个

时间:2015-10-02 13:00:43

标签: java spring authentication spring-security spring-boot

我正在构建一个需要多种身份验证方式的Web应用程序。 所有用户都有一个类型,指示使用何种类型的身份验证。有两种类型:

  • 内部用户。用户使用存储在DB中的凭据进行身份验证。
  • LDAP用户。用户通过LDAP进行身份验证。

有没有办法只使用其中一种取决于用户类型?

我看到您可以向身份验证管理器添加多个身份验证提供程序,但这样就可以对用户进行所有身份验证。

更新

情况如下:

  1. 我有一个包含应用程序所有用户的数据库。如果用户是"内部用户"类型,密码与用户的其他数据一起存储在DB中。否则,如果用户类型是" LDAP用户"密码不存储在数据库中,因为我要询问LDAP,但其他数据类型在数据库中。这是一个必备的应用程序。
  2. 现在,我已经为"内部用户"实施了身份验证提供程序。类型。我使用用户名在数据库中搜索用户,如果存在,我获取类型,如果是"内部用户"使用存储在数据库中的密码检查密码。
  3. 问题是,如何通过用户类型在执行时间中选择身份验证提供程序?

0 个答案:

没有答案