代码之家  ›  专栏  ›  技术社区  ›  Ran Sedaka

WSO2是自定义验证器

  •  2
  • Ran Sedaka  · 技术社区  · 6 年前

    我们正在使用WSO2 IS v5.4.1

    我们希望基于外部用户数据存储对用户进行身份验证。 所需步骤:

    1. 用户使用用户名和密码通过Oauth登录到WSO2
    2. 登录请求被转发到一个外部服务,该服务通过给定的用户名和密码对用户进行身份验证,而不通过WSO2进行身份验证是默认的用户存储。
    3. 该服务向WSO2返回某种所需的响应,并基于此响应执行某种业务逻辑。

    我看到有两种选择可以实现这一点:

    1. 实现自定义本地验证器
    2. 实现自定义联邦身份验证器

    正确的方法是什么?

    谢谢

    1 回复  |  直到 6 年前
        1
  •  0
  •   Jayanga Kaushalya    6 年前

    根据定义,

    1. 本地身份验证器用于使用本地用户存储对用户进行身份验证。可能使用用户名和密码。您可以使用内置登录页面询问用户的凭据,并根据本地用户存储进行验证。

    2. 联邦身份验证器将与第三方身份提供者进行身份验证。比如谷歌或Facebook。在这种情况下,您不会直接询问用户的凭据,而是将用户重定向到第三方登录页面,在身份验证后,第三方IDP将发送结果。

    通过了解您提供的事实,您似乎需要一个本地身份验证器,您可以直接从他们那里询问用户的凭据,并根据用户存储进行身份验证。

    PS:如果您可以直接与用户存储进行通信(无需使用任何API),并且它是一个支持OOTB的用户存储(LDAP或JDBC),那么您可以直接将其作为辅助用户存储(甚至作为主用户存储)插入,并对其进行身份验证,而无需使用任何自定义。