- sa-token-core:
- 修复:修复
StpUtil.getSessionByLoginId(xx)
参数为 null 时创建无效SaSession
的 bug。 - 优化:在
SpringBoot 3.x
版本下错误的引入依赖时将得到启动失败的提示。 (感谢Uncarbon
提交的pr) - 优化:进一步优化权限校验算法,hasXxx API 只会返回 true 或 false,不再抛出异常。
- 重构:
InvalidContextException
更名为SaTokenContextException
。 [已做向下兼容处理] - 重构:彻底删除
NotPermissionException
异常中的getCode()
方法。 [过期API清理] - 重构:重构
SaTokenException
类方法throwBy-
>notTrue
、throwByNull-
>notEmpty
。[已做向下兼容处理] - 重构:
StpUtil.getSessionBySessionId
提供的SessionId
为空时将直接抛出异常,而不是再返回null。[不向下兼容] - 新增:新增
Http Digest
认证模块简单实现。 [重要] - 重构:更换
HttpBasic
认证模块包名。 [已做向下兼容处理] - 新增:新增
StpUtil.getLoginDeviceByToken(xxx)
方法,用于获取任意 token 的登录设备类型。 - 新增:新增
StpUtil.getTokenLastActiveTime()
方法,获取当前 token 最后活跃时间。 - 修复:修复“当登录时指定 timeout 小于全局 timeout 时,
Account-Session
有效期为全局 timeout”的问题。 - 优化:首次获取
Token-Session
时,其有效期将保持和 token 有效期相同,而不是再是全局 timeout 值。 - 移除:移除
SaSignConfig
的isCheckNonce
配置项。 [不向下兼容] - 新增:
SaSignTemplate#checkRequest
增加“可指定参与签名参数”的功能。 - 重构:将部分加密算法设置为过期。
- 重构:优化 token 读取策略,空字符串将视为没有提交token。
- 修复:
sa-token-bom
补全缺失依赖。 - 优化:二级认证校验之前必须先通过登录认证校验。
- 修复:修复
StpUtil.getLoginId(T defaultValue)
传入 null 时无法正确返回值的bug。
- 修复:修复
- sa-token-sso:
- 优化:SSO 模式三,API 调用签名校验时,限定参与签名的参数列表,更安全。
- 新增:新增
autoRenewTimeout
配置项:是否在每次下发 ticket 时,自动续期 token 的有效期(根据全局 timeout 值) - 新增:
SaSsoConfig
新增配置isCheckSign
(是否校验参数签名),方便本地开发时的调试。 - 新增:
SaSsoConfig
新增配置currSsoLogin
,用于强制指定当前系统的 sso 登录地址。 - 重构:整体重构
sa-token-sso
模块,将server
端和client
端代码拆分。 [重要] [不向下兼容] - 新增:
SaSsoConfig
配置项ssoLogoutCall
重命名为currSsoLogoutCall
。[已做向下兼容处理] - 重构:模式三在校验 Ticket 时,也将强制校验签名才能调通请求。[不向下兼容]
- 新增:新增
maxRegClient
配置项,用于控制模式三下 client 注册数量。 - 新增:新增不同 SSO Client 配置不同
secret-key
的方案。 [重要] - 重构:匿名 client 将不再能解析出所有应用的 ticket。[不向下兼容]
- 新增:新增
homeRoute
配置项:在/sso/auth
登录后不指定 redirect 参数的情况下默认跳转的路由。 - 优化:优化登录有效期策略,SSO Client 端登录时将延续 SSO Server 端的会话剩余有效期。
- 新增:新增
checkTicketAppendData
策略函数,用于在校验 ticket 后,给 sso-client 端追加返回信息。 - 新增:SSO章节文档新增用户数据同步/迁移方案的建议。
- 修复:修复利用@字符可以绕过域名允许列表校验的漏洞。 [漏洞修复]
- 修复:禁止
allow-url
配置项 * 符号出现在中间位置,因为这有可能导致校验被绕过。 [漏洞修复]
- 新增插件/示例:
- 新增:新增插件
sa-token-hutool-timed-cache
,用于整合 Hutool 缓存插件 TimedCache。 [重要] - 新增:新增 SSM 架构整合 Sa-Token 简单示例。 [重要]
- 新增:新增 beetl 整合 Sa-Token 简单示例。 [重要]
- 新增:新增插件
- 文档:
- 部分章节将
@Autowired
更换为更合适的@PostConstruct
- 新增过滤器执行顺序更改示例。
- 部分章节将
- 其它:
- 优化:将跨域处理demo拆分为独立仓库。
- 优化:解决 springboot 集成 sa-token 后排除 jsckson 依赖无法成功启动的问题。
- 优化:解决
sa-token-jwt
模块重复设置 keyt 秘钥问题。(感谢KonBAI
提交的pr) - 优化:jwt模式 token 过期后,抛出的异常描述是 token 已过期,而不再是 token 无效。
- 修复:补齐
sa-token-spring-aop
模块中遗漏监听的注解。