1
0
mirror of synced 2026-05-22 14:43:15 +00:00

fix: 修复 SSO 模式三全端注销失效的问题

This commit is contained in:
click33
2025-06-03 20:26:33 +08:00
parent 2cf18309b2
commit a6b38430cd
@@ -274,7 +274,8 @@ public class SaSsoClientProcessor {
if(singleDeviceIdLogout) { if(singleDeviceIdLogout) {
logoutParameter.setDeviceId(stpLogic.getLoginDeviceId()); logoutParameter.setDeviceId(stpLogic.getLoginDeviceId());
} }
Object centerId = ssoClientTemplate.strategy.convertLoginIdToCenterId.run(stpLogic.getLoginId()); Object loginId = stpLogic.getLoginId();
Object centerId = ssoClientTemplate.strategy.convertLoginIdToCenterId.run(loginId);
SaSsoMessage message = ssoClientTemplate.buildSignoutMessage(centerId, logoutParameter); SaSsoMessage message = ssoClientTemplate.buildSignoutMessage(centerId, logoutParameter);
SaResult result = ssoClientTemplate.pushMessageAsSaResult(message); SaResult result = ssoClientTemplate.pushMessageAsSaResult(message);
@@ -285,7 +286,7 @@ public class SaSsoClientProcessor {
// 极端场景下,sso-server 中心的单点注销可能并不会通知到当前 client 端,所以这里需要再补一刀 // 极端场景下,sso-server 中心的单点注销可能并不会通知到当前 client 端,所以这里需要再补一刀
if(stpLogic.isLogin()) { if(stpLogic.isLogin()) {
stpLogic.logout(logoutParameter); stpLogic.logout(loginId, logoutParameter);
} }
return _ssoLogoutBack(req, res); return _ssoLogoutBack(req, res);
} }