升级到 pac4j v5 时的集中注销行为

问题描述 投票:0回答:1

之前我有一个过滤器配置如下

@SuppressWarnings("unchecked")
@Bean
public LogoutFilter pac4jCentralLogoutFilter() {
    LogoutFilter f = new LogoutFilter();

    f.setConfig(pac4jDefaultConfig());
    f.setDefaultUrl("/login?logout");
    f.setLocalLogout(true);
    f.setCentralLogout(true);
    f.setSuffix("logout");
    f.setLogoutLogic(myLogoutLogic());
    
    return f;
}

这一切都让我在本地或从远程 IDP 注销。

我在发行说明中看到 `5) SAML SLO 到 v5 为止,当 SAML 协议触发中央注销时,也会执行本地注销。为了与 CAS 和 OpenID Connect 协议保持一致,v5 中不再出现这种情况。

本地注销应由来自 IdP 的注销请求(在回调端点上接收)触发,或者通过启用本地注销来显式触发。`

这表明 SAML 发生了一些变化,但我找不到在新的 v5 代码中执行与上述过滤器等效的操作的位置。所有这些方法都消失了。请指教。

我希望它能像以前一样工作,但我找不到执行此操作的机制。

pac4j
1个回答
0
投票

这意味着您必须明确定义:

f.setLocalLogout(true);
以执行本地注销(在中央注销之前),或者您必须确保 IdP 处的中央注销将向应用程序发送注销请求(以执行本地注销) .

© www.soinside.com 2019 - 2024. All rights reserved.