【问题标题】:Can I integrate Apache Shiro and CAS and WS02 Identity Server我可以集成 Apache Shiro 和 CAS 以及 WS02 身份服务器吗
【发布时间】:2026-02-04 22:55:01
【问题描述】:

我正在使用 Apache Shiro 作为我的应用程序的安全框架,它还需要 SAML 来进行 SSO 集成。并且未来可能会使用 Oauth。

  1. 我是否只需要 buji-pac4j 来涵盖 SAML 和 Oauth?

  2. 使用 buji-pac4j,我是否需要编写任何 SAML 代码或全部由 buji-pac4j 框架处理?

  3. 如果我有 buji-pac4j 并使用 CasServer 进行身份验证,是否可以将其他身份管理服务器(例如 WS02 Identity Server(充当联合集线器))集成到 CasServer?

【问题讨论】:

    标签: apache cas wso2is shiro


    【解决方案1】:

    1) pac4j 是通用安全引擎,buji-pac4j 是 Shiro 的 pac4j 适配器。对于 SAML 和 OAuth,您需要 buji-pac4j 库,还需要 pac4j-saml 和 pac4j-oauth 模块

    2)您不需要为 SAML 编写代码,只需配置:https://github.com/pac4j/buji-pac4j-demo/blob/master/src/main/resources/shiro.ini#L33

    3) 您可以使用 buji-pac4j 和 pac4j-cas 库将您的应用程序与您的 CAS 服务器集成,但我不确定这正是您想要做的

    我强烈建议看一下演示:https://github.com/pac4j/buji-pac4j-demo

    【讨论】:

    • 非常感谢您的洞察力!关于第三种情况,我想将应用程序与 CAS 服务器集成,因为 pac4j 提供了一个适配器来使用 pac4j-cas 执行此操作,正如您在回复中提到的那样。但我的理解是,CAS 并不是真正的联合身份提供者,如 WSO2。因此,我想与 CAS(用于 SSO)和 wso2(用于完整的联合身份堆栈)集成。所以我的问题是,是否可以将 wso2 身份服务器进一步集成到 buji-pac4j 和 pac4j-cas 拓扑的混合中?
    • 知道了。我不知道 WSO2,但它似乎支持 SAML2 和 OpenId Connect,因此您可以使用 pac4j-saml 和 SAML2Client 或 pac4j-oidc 和 OidcClient 与此服务器集成:github.com/pac4j/pac4j/wiki/Clients#saml-pac4j-saml-module
    • 感谢 jleleu!我想知道将来是否会考虑 pac4j-wso2 之类的东西。
    • 有点。我们可以在 pac4j-saml 和 pac4j-oidc 模块中有一个 Wso2SamlClient 和一个 Wso2OidcClient
    最近更新 更多