【问题标题】:In which order are pac4j client usedpac4j 客户端的使用顺序
【发布时间】:2021-09-26 09:32:59
【问题描述】:

我有一个使用 pac4j 的应用程序并使用多个身份验证客户端来保护我的路由(直接和间接),如下所示:Secure("AnonymousClient", "FacebookClient", "JWTClient")。 我真的不明白客户端的使用顺序。它似乎是从右到左,如果没有客户可以建立配置文件,则返回 401。我对吗? 授权人的顺序是一样的吗?

【问题讨论】:

    标签: pac4j


    【解决方案1】:

    似乎比这要复杂得多。来自 DefaultSecurityLogic.java 中的 cmets:

    首先,如果用户未通过身份验证(没有配置文件)并且如果某些 客户端已在客户端参数中定义,尝试登录 对于直接客户。

    然后,如果用户有个人资料,则根据以下内容检查授权 授权人配置。如果授权有效,则 用户被授予访问权限。否则会显示 403 错误页面。

    最后,如果用户仍然没有通过身份验证(没有配置文件),他是 如果第一个定义,则重定向到适当的身份提供者 客户端是客户端配置中的间接客户端。否则,一个 显示 401 错误页面。

    【讨论】:

      猜你喜欢
      • 2022-06-18
      • 1970-01-01
      • 2021-01-05
      • 2021-10-22
      • 2020-03-02
      • 1970-01-01
      • 2021-10-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多