v1.38.0 update

This commit is contained in:
click33
2024-05-06 12:01:07 +08:00
parent cc9fe4c08b
commit ce40fe2dad
65 changed files with 117 additions and 69 deletions

View File

@@ -1,5 +1,51 @@
# 更新日志
### v1.38.0 @2023-10-18
- 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 增加“可指定参与签名参数”的功能。
- 重构:将部分加密算法设置为过期。
- 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 端的会话剩余有效期。
- 新增插件/示例:
- 新增:新增插件 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 模块中遗漏监听的注解。
### v1.37.0 @2023-10-18
- 修复:修复路由拦截鉴权可被绕过的问题。 **[漏洞修复]**
- 重构:未登录时调用鉴权 API 抛出未登录异常而不再是无权限异常。