From f150209a4f7b55f2f2bcf9f79e477bb240c0c7e6 Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Sat, 3 May 2025 13:14:18 +0800 Subject: [PATCH] =?UTF-8?q?feat(sso):=20sso-server=20=E6=96=B0=E5=A2=9E=20?= =?UTF-8?q?jumpToRedirectUrlNotice=20=E7=AD=96=E7=95=A5=EF=BC=8C=E7=94=A8?= =?UTF-8?q?=E4=BA=8E=E6=8E=88=E6=9D=83=E9=87=8D=E5=AE=9A=E5=90=91=E8=B7=B3?= =?UTF-8?q?=E8=BD=AC=E4=B9=8B=E5=89=8D=E7=9A=84=E9=80=9A=E7=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/dev33/satoken/sso/model/SaCheckTicketResult.java | 7 ++++--- .../dev33/satoken/sso/processor/SaSsoServerProcessor.java | 2 ++ .../dev33/satoken/sso/strategy/SaSsoServerStrategy.java | 8 ++++++++ 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/sa-token-plugin/sa-token-sso/src/main/java/cn/dev33/satoken/sso/model/SaCheckTicketResult.java b/sa-token-plugin/sa-token-sso/src/main/java/cn/dev33/satoken/sso/model/SaCheckTicketResult.java index b0aff163..a6880952 100644 --- a/sa-token-plugin/sa-token-sso/src/main/java/cn/dev33/satoken/sso/model/SaCheckTicketResult.java +++ b/sa-token-plugin/sa-token-sso/src/main/java/cn/dev33/satoken/sso/model/SaCheckTicketResult.java @@ -44,12 +44,12 @@ public class SaCheckTicketResult implements Serializable { /** 此账号会话剩余有效期 */ public Long remainSessionTimeout; - /** 从 sso-server 返回的所有参数 */ - public SaResult result; - /** 此账号在认证中心的 loginId */ public Object centerId; + /** 从 sso-server 返回的所有参数 */ + public SaResult result; + public SaCheckTicketResult() { } @@ -61,6 +61,7 @@ public class SaCheckTicketResult implements Serializable { ", deviceId='" + deviceId + '\'' + ", remainTokenTimeout=" + remainTokenTimeout + ", remainSessionTimeout=" + remainSessionTimeout + + ", centerId=" + centerId + ", result=" + result + '}'; } diff --git a/sa-token-plugin/sa-token-sso/src/main/java/cn/dev33/satoken/sso/processor/SaSsoServerProcessor.java b/sa-token-plugin/sa-token-sso/src/main/java/cn/dev33/satoken/sso/processor/SaSsoServerProcessor.java index bf4092f4..3d2e4472 100644 --- a/sa-token-plugin/sa-token-sso/src/main/java/cn/dev33/satoken/sso/processor/SaSsoServerProcessor.java +++ b/sa-token-plugin/sa-token-sso/src/main/java/cn/dev33/satoken/sso/processor/SaSsoServerProcessor.java @@ -119,6 +119,7 @@ public class SaSsoServerProcessor { if(SaFoxUtil.isEmpty(cfg.getHomeRoute())) { throw new SaSsoException("未指定 redirect 参数,也未配置 homeRoute 路由,无法完成重定向操作").setCode(SaSsoErrorCode.CODE_30014); } + ssoServerTemplate.strategy.jumpToRedirectUrlNotice.run(cfg.getHomeRoute()); return res.redirect(cfg.getHomeRoute()); } @@ -141,6 +142,7 @@ public class SaSsoServerProcessor { }); // 跳转 + ssoServerTemplate.strategy.jumpToRedirectUrlNotice.run(redirectUrl); return res.redirect(redirectUrl); } diff --git a/sa-token-plugin/sa-token-sso/src/main/java/cn/dev33/satoken/sso/strategy/SaSsoServerStrategy.java b/sa-token-plugin/sa-token-sso/src/main/java/cn/dev33/satoken/sso/strategy/SaSsoServerStrategy.java index d6982f8d..90f41d9b 100644 --- a/sa-token-plugin/sa-token-sso/src/main/java/cn/dev33/satoken/sso/strategy/SaSsoServerStrategy.java +++ b/sa-token-plugin/sa-token-sso/src/main/java/cn/dev33/satoken/sso/strategy/SaSsoServerStrategy.java @@ -16,6 +16,7 @@ package cn.dev33.satoken.sso.strategy; import cn.dev33.satoken.SaManager; +import cn.dev33.satoken.fun.SaParamFunction; import cn.dev33.satoken.sso.function.CheckTicketAppendDataFunction; import cn.dev33.satoken.sso.function.DoLoginHandleFunction; import cn.dev33.satoken.sso.function.NotLoginViewFunction; @@ -51,6 +52,13 @@ public class SaSsoServerStrategy { return SaResult.error(); }; + /** + * SSO-Server端:在授权重定向之前的通知 + */ + public SaParamFunction jumpToRedirectUrlNotice = (redirectUrl) -> { + + }; + /** * SSO-Server端:在校验 ticket 后,给 sso-client 端追加返回信息的函数 */