跳至主要內容

3.0.X 更新日志

码匠君SASSpring Authorization ServerDante Cloud微服务领域驱动DDDSpring BootSpring CloudSpring SecuritySpring Cloud AlibabaSpring Cloud TencentOAuth2.1NacosSkywalkingSentinelSeata大约 28 分钟

3.0.X 更新日志

v3.0.7.0

  • 主要更新
    • [升级] Spring Boot 版本升级至 3.0.7
  • 其它更新
    • [优化] 优化 Webjars 相关组件的依赖关系,规避通过 rest 模块引入过多无用的依赖
  • 依赖更新
    • [升级] maven-gpg-plugin 版本升级至 3.1.0
    • [升级] commons-io 版本升级至 2.12.0
    • [升级] redisson 版本升级至 3.21.3
    • [升级] alipay-sdk-java 版本升级至 4.35.132.ALL
    • [升级] com.baidu.aip 版本升级至 4.16.16

v3.0.6.4

  • 主要更新
    • [升级] Spring Authroization Server 版本升级至 1.1.0
    • [升级] Spring Security 版本升级至 6.1.0
    • [新增] 新增支持智能电视、IOT 设备等输入受限设备的 Device Flow 认证模式
  • 其它更新
    • [新增] 新增 Device Flow 认证系统内置页面
    • [新增] 新增 IOT 产品、设备管理 SDK
    • [重构] 重构 Spring Authorization Server 授权确认页面,与内置认证页面统一风格。
    • [重构] 除特殊依赖外,将所有内置页面静态资源引用改为 Webjars 方式。
    • [重构] 所有内置页面均改用页面嵌入 Vue 方式重新实现
    • [优化] 优化客户端动态自动注册相关功能代码及配置方式
    • [优化] 优化数据库初始化脚本,增加 Spring Authorization Server 内置默认 Scope 数据及关联数据
  • 依赖更新
    • [升级] fastjson2 版本升级至 2.0.32
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.756
    • [升级] aliyun-sdk-oss 版本升级至 3.16.3

v3.0.6.3

  • 主要更新
    • [升级] Spring Boot Admin 版本升级至 3.0.4
    • [升级] Spring Cloud Tencent 版本升级至 1.11.4-2022.0.1
  • 其它更新
    • [重构] 重构自定义实体转换 RegisteredClient 代码,抽取公共转换适配器,减少重复代码方便后续 SAS 属性变更统一修改。
    • [重构] 重构 OAuth2 Authentication 模块,缩减包名,明晰定位。
    • [重构] 重构 Spring Authorization Server 相关自定义配置类,根据相关模块职责与定位,重新梳理所有配置参数,并整合已有配置类,调整和精简配置参数,减少配置在各模块间交叉引用,提升和增强模块内聚性。
    • [重构] 合并 oauth2-sdk-compliance 模块至 oauth2-sdk-management。
    • [优化] 减少 Dante Cloud 统一 dependencies 中配置的镜像仓库配置,避免过多 matadata 信息引起的 maven 下载 混乱
  • 依赖更新
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.754

v3.0.6.2

  • 主要更新
    • [新增] 新增 Webjars 支持,将内置页面引用的 JavaScript 和 CSS 全部改为 Webjars 方式引入,同时删除不必要的静态资源降低生成 jar 大小
    • [新增] SQLite 数据库集成 JPA 和 p6spy 支持
    • [重构] 重构统一错误体系代码,统一使用 FeedbackFactory 管理自定义错误信息,降低自定义 Exception 手动输入错误代码产生错误类型与 HttpStatus 不一致或不配问题。
    • [重构] 重构后端 Spring Authorization Server 核心数据实体,补充新版本缺失参数及字段
    • [重构] 抽取 Spring Authorization Server 通用工具代码,以支持更多认证模式。
    • [重构] 使用 Thymeleaf 模版统一内置页面布局,统一设备认证页面,提升页面代码易维护性。
    • [重构] 重新配置并统一 maven repositories 和 pluginRepositories。以 dante-engine dependencies 为核心,删除其它工程中,重复和冲突的配置。
    • [修复] 修复单体版 Swagger 参数层级配置错误,导致 SpringDoc Authorize 按钮不显示问题
    • [修复] 修复前端代码与后端不匹配以及字段参数缺失问题
    • [修复] 优化前端 OAuth2 应用管理功能,修复分页面内容显示错误问题。
    • [修复] 修改 Spring Authorization Server 默认的 SessionRepository 配置。解决使用 Spring Session 配置 SessionRepository 导致设备认证流程错误问题
  • 依赖更新
    • [升级] mapstruct-processor 版本升级至 1.5.5.Final
    • [升级] maven-gpg-plugin 版本升级至 3.1.0
    • [升级] redisson 版本升级至 3.21.1
    • [升级] fastjson2 版本升级至 2.0.31
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.752
    • [升级] alipay-sdk-java 版本升级至 4.35.126.ALL

v3.0.6.1

  • 主要更新
    • [升级] Spring Cloud Alibaba 版本升级至 2022.0.0.0-RC2
    • [升级] Spring Cloud Tencent 版本升级至 1.11.2-2022.0.1
    • [升级] Spring Boot Admin 版本升级至 3.0.3
    • [升级] Debezium 版本及相关基础设施版本升级至 2.2
    • [重构] 重构 Jackson 全局配置以及相关自定义代码
      1. 不再使用 @Primary ObjectMapper Bean 的方式全局配置 Jackson。
      2. 改用更灵活的、支持扩展的 Customizer 方式全局配置 Jackson。
      3. 同时兼顾全局配置、yaml 配置和自定义扩展,支持模块代码独立设置 Jackson 参数。
      4. 解决原有配置方式,只能通过修改源代码进行配置变更,无法自定义扩展问题。
      5. 解决原有配置方式,导致 yaml 配置失效、Spring Boot Jackson 默认 Bean 不注入等问题。
  • 其它更新
    • [重构] Jackson XSS 防护代码迁移至 rest-sdk-protect 模块,降低 XSS 相关代码耦合性。
    • [重构] 部分重复代码、类似代码提取为公共方法或类
  • 依赖更新
    • [升级] redisson 版本升级至 3.21.0
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.748

v3.0.6.0

  • 主要更新
    • [升级] Spring Boot 版本升级至 3.0.6
    • [升级] Spring Security 版本升级至 6.1.0-RC1
    • [升级] Spring Authorization Server 版本升级至 1.1.0-RC1
  • 其它更新
    • [漏洞] 修复 Snakeyaml (CVE-2022-1471) 存在反序列化漏洞 和 (CVE-2022-41854) 存在缓冲区溢出漏洞
    • [新增] 新增服务优雅停机支持
    • [新增] 新增 Nacos Server Postgresql 数据源支持插件及数据库初始化脚本
    • [修复] 修复 Access Token Scope 设置不正确导致 OAuth2 Client 使用授权码模式登录出错问题。
    • [修复] 修复组件模块编译错误
    • [修复] 修复自定义社交登录模式中,微信小程序参数获取不到错误。
    • [优化] Security 相关代码适配 Spring Security 最新用法。
    • [优化] 使用最新版 Bpmn-js、Diagram-js 内部 Typescript 定义替换自定义 Typescript 定义,并优化重构相关代码以适配最新定义
    • [重构] 采用页面嵌入 Vue 方式,重构授权页面。同时兼容 Device Authorization 授权页面
  • 依赖更新
    • [升级] snakeyaml 版本升级至 2.0.
    • [升级] spring-security-cas 版本升级至 5.8.3
    • [升级] fastjson2 版本升级至 2.0.29
    • [升级] wxjava 版本升级至 4.5.0
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.743
    • [升级] alipay-sdk-java 版本升级至 4.35.110.ALL

v3.0.5.5

  • 主要更新
    • [升级] Spring Cloud Tencent 版本升级至 1.11.1-2022.0.1
    • [升级] Spring Authorization Server 版本升级至 1.1.0-RC1
    • [升级] Spring Security 版本升级至 6.1.0-RC1
    • [升级] Camunda 版本升级至 7.19.0,同步更新数据库脚本
    • [升级] Skywalking Agent 版本升级至 8.15.0
    • [升级] Antisamy 版本升级至 1.7.3,同步升级 XSS 共计防护策略配置文件
  • 其它更新
    • [重构] 重构各个模块 Constants 常量,清除无用代码,让各个常量归属更合理、命名更统一规范。
    • [重构] 重构 Minio 核心服务代码
    • [优化] 优化 Spring Authorization Server JPA 存储相关代码
    • [优化] 优化 Docker Compose 脚本
    • [修复] 修复针对 “text/html” 头的统一错误信息页面不显示问题
    • [删除] 删除重复放置的静态错误页面代码
  • 依赖更新
    • [升级] antisamy 版本升级至 1.7.3
    • [升级] bcprov-jdk15to18 版本升级至 1.73
    • [升级] fastjson2 版本升级至 2.0.28
    • [升级] hutool 版本升级至 5.8.18
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.737
    • [升级] alipay-sdk-java 版本升级至 4.35.107.ALL
  • 升级说明
    • 因仓库提交文件大小限制,所以本次发布不在上传 Skywalking Agent 相关 Jar 包,有需要请自行下载。
    • Camunda 7.19.0 尚未适配 Spring Boot 3,还无法正常使用,当前仅做依赖升级,

v3.0.5.4

  • 主要更新
    • [升级] Nacos 版本升级至 2.2.2
  • 其它更新
    • [修复] 收 DeviceController 类的 success()方法影响,导致授权码模式页面跳转错误问题。fix: #I6US82 (ISSUED by 大叔丨小巷)

v3.0.5.3

  • 主要更新
    • [新增] 优化简单数据审计内容,新增实时数据审计、数据的变更记录、查看特定历史数据等数据审计功能
  • 其它更新
    • [修复] 单位删除时增加参数接收设定 (PR by 未来)
    • [新增] 新增 MongoDB 基础 Entity、Repository、Service、Controller 和 MybatisPlus 基础 Controller,方便业务接口代码编写。
    • [优化] 设备认证授权模式激活页面调整
  • 依赖升级
    • [升级] fastjson2 版本升级至 2.0.27
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.731
    • [升级] qiniu-java-sdk 版本升级至 7.13.0
    • [升级] alipay-sdk-java 版本升级至 4.35.101.ALL
    • [升级] aliyun-sdk-oss 版本升级至 3.16.2
    • [升级] xnio 版本升级至 3.8.9.Final

v3.0.5.2

  • 主要更新
    • [升级] Spring Cloud Tencent 版本升级至 1.10.3-2022.0.1
  • 其它更新
    • [修复] 修复数据库初始化数据 sql 脚本错误
    • [修复] 修复多租户数据源租户 ID 异步校验不生效问题
    • [修复] 修复前端应用新建多租户页面跳转错误问题
    • [优化] 优化数据自动初始化脚本放置位置,与新版本代码创建数据表需要启动两个服务机制进行统一。
  • 依赖更新
    • [升级] springdoc 版本升级至 2.1.0
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.726
    • [升级] alipay-sdk-java 版本升级至 4.35.92.ALL

v3.0.5.1

  • 主要更新
    • [升级] Spring Cloud 版本升级至 2022.0.2
    • [重构] 重构多租户功能,优化代码实现
      1. 多租户代码提取为单独代码模块,支持独立数据库(Database)、共享数据库(Schema)、共享数据表(Discriminator) 三种模式
      2. 默认开启共享数据表(Discriminator)模式, 取消所有表默认添加 TenantId 字段方式,改为按需添加以规避不必要的设计混乱
      3. 优化共享数据库(Schema)模式数据源切换逻辑,与独立数据库(Database)分离实现,避免冲突。
      4. 增加多租户数据源管理功能,多租户数据源从配置文件配置方式变更为通过数据表进行管理。
      5. 优化多租户数据库连接池、数据库事务支持。
  • 其它更新
    • [新增] 新增前端工程 Authorization Code + PKCE 支持工具代码。
    • [新增] 增加 Spring 默认仓库,解决未使用腾讯镜像仓库无法下载 snapshot 或 milestone 版本问题。(PR by tao)
    • [优化] 删除 @herodotus/plugins 模块,将其代码移动到主工程。解决基础样式编译后过大以及编译新版本 quasar 问题出错。
    • [重构] 删除 data-sdk-p6spy 模块,将相关代码合并至 data-sdk-jpa 模块。
  • 依赖更新
    • [升级] redisson 版本升级至 3.20.1
    • [升级] hutool 版本升级至 5.8.16
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.724
    • [升级] alipay-sdk-java 版本升级至 4.35.87.ALL

v3.0.5.0

  • 主要更新
    • [升级] Spring Boot 版本升级至 3.0.5
    • [升级] Spring Boot Admin 版本升级至 3.0.2
    • [升级] Spring Cloud Tencent 版本升级至 1.10.2-2022.0.1
    • [升级] Spring Authorization Server 版本升级至 1.1.0-M2
    • [升级] Spring Security 版本升级至 6.1.0-M2
    • [升级] Nacos 版本升级至 2.2.1
    • [漏洞] 修复 Spring DoS 安全漏洞 (CVE-2023-20861)
  • 其它更新
    • [修复] 修复授权码模式登录页面在最新版本 Spring Authorization Server 下被拦截问题
    • [修复] 优化前端 Vite 生产模式下 chunk 打包策略,解决 chunk 不合理设置,产生编译后的代码运行异常,导致前端页面无法正常显示问题。
    • [修复] 修复 docker-compose 脚本中,最新版本 Nacos 缺少新增默认环境变量,导致 Nacos 镜像无法正常启动错误。fix:#I6OMKH (ISSUED by 乌拉松)
    • [修复] 修复 mysql 数据库初始化脚本缺少 sys_user 数据问题。fix:#I6PNHB (ISSUED by ustcck)
    • [优化] Polaris 配置添加注册中心地址,docker 环境变量适配 (PR by 我问这瓜保熟吗)
    • [优化] spring cloud alibaba 相关配置增加适配 docker 环境变量配置
    • [新增] 支持字段级多租户模式
  • 依赖更新
    • [升级] maven-embedder 版本升级至 3.9.1
    • [升级] maven-compat 版本升级至 3.9.1
    • [升级] fastjson2 版本升级至 2.0.26
    • [升级] mybatis 版本升级至 3.5.13
    • [升级] tencentcloud-sdk-java 版本升级至 3.1.720
    • [升级] alipay-sdk-java 版本升级至 4.35.83.ALL

v3.0.4.2

  • 主要更新
    • [升级] SpringDoc 版本升级至 2.0.4

v3.0.4.1

  • 主要更新
    • [改版] 基于 SAS 的动态接口权限全新改版
      • 不再直接使用接口作为权限数据,提取接口数据单独管理,额外增加权限层,支持同一权限配置多个接口。
      • 用户权限 和 OAuth2 Scope 权限,均已支持同一权限配置多个接口。提升权限配置和使用的便捷性,同时解决以接口作为权限导致 Token 过大过长问题。
      • 全面支持 Ant 风格 REST 接口转权限数据校验,支持静态配置权限与动态权限重叠冲突检查,包括通配符及占位符形式接口重叠冲突检查。
      • 权限重叠冲突检查会自动选取最大匹配规则作为权限校验元数据。例如:静态权限 /message/** 和动态权限 /message/send 重叠,会自动选取 /message/** 作为权限校验元数据。
      • 无须重启服务、修改代码,支持在系统后台动态修改某个接口的表达式权限,提升接口权限设置的便捷性和灵活性。
      • 结合最新版本 Spring Authorization ServerSpring Security,重新梳理当前支持动态表达式权限,去除冗余、重复以及不再支持的表达式。目前支持的表达式动态表达式权限包括:permitAll, anonymous, rememberMe, denyAll, authenticated, fullyAuthenticated, hasRole, hasAnyRole
      • 极大地简化了接口数据汇总、权限转换、重叠冲突校验、权限分发等核心代码逻辑。
    • [升级] Spring Boot 版本升级至 3.0.4
    • [升级] Spring Cloud Tencent 版本升级至 1.10.0-2022.0.1
    • [升级] Spring Boot Admin 版本升级至 3.0.1
  • 其它更新
    • [漏洞] 强制升级 commons-fileupload 版本至 1.5 ,修复 CVE-2023-24998 安全漏洞
    • [重构] 结合各模块组件的职责及定位,重新划分和调整部分模块的归属。
    • [重构] 原 dante-cloud-upms-logic 和 dante-cloud-upms-rest 代码调整至 dante-engine,后续以组件形式调用。
    • [重构] 原 dante-module-upms-logic 和 dante-module-upms-rest 模块,名称分别变更为 dante-module-social 和 dante-module-metadata,职责和用途更加清晰
    • [重构] 重新定义系统部分管理功能接口路径,增加统一标识方便查看及数据库管理操作。
    • [优化] 优化多级缓存 Key 生成逻辑,解决原有以 JSON 格式作为缓存 Key,导致缓存数据在可视化工具中查看混乱问题。
    • [优化] 前端主要管理功能配合新版动态权限同步优化
    • [修复] 新增在服务多实例情况下,多级缓存权限数据本地同步支持。解决在同一消费组下,未能消费到数据的服务实例校验权限错误问题。
    • [修复] 彻底解决初次搭建过程中因操作步骤错误,产生冗余缓存数据,会出现 Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1 错误问题
  • 依赖更新
    • [升级] springdoc 版本升级至 2.0.3
    • [升级] fastjson2 版本升级至 2.0.25
    • [升级] hutool 版本升级至 5.8.15
    • [升级] wxjava 版本升级至 4.4.9.B
    • [升级] mybatis 版本升级至 3.5.12
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.712
    • [升级] alipay-sdk-java 版本升级至 4.35.71.ALL

v3.0.4.0

  • 主要更新
    • [升级] Spring Boot 版本升级至 3.0.4
  • 依赖更新
    • [升级] redisson 版本升级至 3.20.0
    • [升级] hutool 版本升级至 5.8.13
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.706

v3.0.3.0

  • 主要更新
    • [升级] Spring Boot 版本升级至 3.0.3
    • [升级] 适配 Spring Authorization Server 1.1.0-M1
  • 其它更新
    • [修复] 修复单体版 MySQL 数据库初始化脚本错误。fix:#I6HRDP (ISSUED by 柳敏莘)
    • [修复] 修复查询接口中包含 properties 数组属性会导致 Gateway UrlDecode 失败的问题 fix:#I6HOLA (ISSUED by dens)
  • 依赖更新
    • [升级] spring-security-cas 版本升级至 5.8.2
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.702
    • [升级] alipay-sdk-java 版本升级至 4.35.65.ALL

v3.0.2.3

  • 主要更新
    • [升级] Spring Authorization Server 版本升级至 1.0.1
  • 依赖更新
    • [升级] logstash-logback-encoder 版本升级至 7.3
    • [升级] minio 版本升级至 8.5.2
    • [升级] fastjson2 版本升级至 2.0.24
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.697
    • [升级] alipay-sdk-java 版本升级至 4.35.45.ALL
    • [升级] aliyun-sdk-oss 版本升级至 3.16.1
    • [升级] dom4j 版本升级至 2.1.4

v3.0.2.2

  • 主要更新
    • [升级] Spring Cloud Tencent 版本升级至 1.9.0-2022.0.1
    • [升级] Debezimu 相关组件版本升级至 2.1
    • [变更] 本地权限数据存储修改为多级缓存,以支持服务多实例权限数据共享。
    • [删除] 删除云片短信发送模块
  • 其它更新
    • [重构] 重构权限存储 Key 对象结构,解决 AntPathMatcher 无法序列化导致多级缓存模式下存储权限数据失败问题。
    • [修复] Dashboard 页面,在切换 Tab 后,echarts 宽度不再自适应,显示成 100px 问题。
    • [修复] 根据新版 axios typescript 定义,修改 axios 核心代码解决类型提示错误。
  • 依赖更新
    • [升级] redisson 版本升级至 3.19.3
    • [升级] maven-embedder 版本升级至 3.9.0
    • [升级] maven-compat 版本升级至 3.9.0
    • [升级] hutool 版本升级至 5.8.12
    • [升级] alipay-sdk-java 版本升级至 4.35.45.ALL
    • [升级] tencentcloud-sdk-java 版本升级至 3.1.691
    • [升级] com.baidu.aip 版本升级至 4.16.14

v3.0.2.1

  • 主要更新
    • [升级] Spring Cloud 版本升级至 2022.0.1
    • [升级] Spring Boot Admin 版本升级至 3.0.0
    • [升级] Spring Cloud Tencent 版本升级至 1.8.5-2022.0.1
    • [升级] Skywalking Agent 版本升级至 8.14.0
  • 其它更新
    • [新增] 增加本项目涉及的 Skywalking 常用 Agent Plugins,方便生产环境直接打包使用。
    • [修复] Dashboard 页面,在切换 Tab 后,echarts 宽度不再自适应,显示成 100px 问题。
  • 依赖更新
    • [升级] Okhttps 版本升级至 4.0.1

v3.0.2.0

  • 主要更新
    • [升级] Spring Boot 版本升级至 3.0.2 fix:#I6B4UT
    • [升级] Spring Boot Admin 版本升级至 3.0.0-M9 fix:#I6B4WO
    • [升级] Spring Cloud Tencent 版本升级至 1.8.4-2022.0.0 fix:#I6B4WM
    • [重构] 重构 Athena 工程模块结构,简化该工程多模块结构,删除多余无意义的结构示例性结构,各模块的用途及含义更简洁清晰
  • 其它更新
    • [新增] 针对某一类权限校验并不严格的接口,新增只校验是否认证、不校验授权的权限校验策略,以提高权限校验的灵活度,降低权限配置维护的工作量。
    • [新增] 只校验是否认证、不校验授权的权限校验策略配置
    • [修复] 修复极端情况下,权限缓存数据丢失,接口请求将跳过权限验证的潜在安全问题。
    • [修复] 修复 Spring Cloud Gateway 长期运行后出现 io.netty.util.internal.OutOfDirectMemoryError 问题。fix:#I6AZJX (ISSUED by 狂练胸肌李大懒)
    • [修复] 修复遗漏 Spring Authorization Server 0.4.0 以后新增字段 authorized_scopes 问题
    • [修复] 修复自定义授权模式使用 Refresh Token 重新申请 Token 抛错问题。fix:#6
    • [优化] 将默认 WebSocket 连接地址设置为 permitAll 权限,跳过资源服务器检测,由 WebSocket 模块自主进行权限校验。
    • [优化] 基于 axios 最新版本 typescript 定义,优化前端 @herodotus/core 模块 axios 核心代码,避免编译过程中出现类型校验错误。
  • 依赖更新
    • [升级] maven-embedder 版本升级至 3.8.7
    • [升级] maven-compat 版本升级至 3.8.7
    • [升级] redisson 版本升级至 3.19.1
    • [升级] minio 版本升级至 3.5.1
    • [升级] fastjson2 版本升级至 2.0.23
    • [升级] wxjava 版本升级至 4.4.8.B
    • [升级] jetcache 版本升级至 2.7.3
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.681
    • [升级] alipay-sdk-java 版本升级至 4.35.37.ALL

v3.0.1.0

  • 主要更新
    • [升级] Spring Boot 版本升级至 3.0.1
    • [升级] Spring Cloud Alibaba 版本升级至 2022.0.0.0-RC1
    • [升级] Spring Cloud Tencent 版本升级至 1.8.2-2022.0.0
    • [升级] Nacos 版本升级至 2.2.1-RC
    • [升级] MyBatis Plus 版本升级至 3.5.3.1
  • 新增特性
    • [新增] 新增融合 Stomp WebSocket、私信、公告等功能的独立消息服务。支持前端与后端采用 WebSocket 和 REST 接口互发消息。
    • [新增] 新增私信、公告发送,及新消息提醒、基于私信对话浏览信息功能
    • [新增] 新增手工解析 Token 信息机制,同时支持 JWT Token 和 Opaque Token。
    • [新增] WebSocket 模块,支持 WebSocket Token 鉴权及登录用户信息解析功能
    • [新增] 新增实时在线用户统计及同步实时刷新功能
    • [新增] 前端新增基于用户 ID,动态生成默认 Avatar 功能。
    • [新增] 前端新增独立个人设置页面,包含私信、公告查阅功能
    • [新增] 前端采用新版 Stomp JS 实现 WebSocket 支持。
  • 其它更新
    • [优化] 去除额外增加的 JetCache 自动注入配置代码,改为使用新版 JetCache 自身配置。
    • [优化] 在 Token 中增加额外用户信息,方便前端使用,减少重复查询。
    • [优化] 调整部分模块 DTO 代码放置目录
    • [优化] 恢复 Spring Cloud Alibaba 相关代码,删除 Sentinel 临时支持新版 Spring Boot 代码。
    • [优化] 将默认基础设施修改为 Alibaba,删除 Spring Cloud Alibaba 基础设施环境中 Zookeeper 服务发现配置。
    • [重构] 删除 engine-protect 模块,相关代码合并至 engine-rest 模块中
    • [修复] 修复 XSS Request 包装器 Parameter 方法错误,导致无法获取参数错误。
    • [修复] 修复 Anti 萨摩耶 XSS 防护代码额外增加的标识符引起的 WebSocket Token 无法正确解析问题。
    • [修复] 修复因 Hibernate 6 代码变化,导致基于 JetCache 自定义 JPA 二级缓存分页查询数据不正确问题。
    • [修复] 修复前端异常提示框弹出后,在不同时机下,特别是调试阶段,vue-router 实例不存在导致的页面不会刷新问题。
  • 依赖更新
    • [升级] jetcache 版本升级至 2.7.2
    • [升级] hutool 版本升级至 5.8.11
    • [升级] spring-boot-admin 版本升级至 3.0.0-M8
    • [升级] spring-security-cas 版本升级至 5.8.1
    • [升级] springdoc 版本升级至 2.0.2
    • [升级] wxjava 版本升级至 4.4.7.B
    • [升级] mybatis-plus-boot-starter 版本升级至 3.5.3.1
    • [升级] mybatis-plus-generator 版本升级至 3.5.3.1
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.667
    • [升级] alipay-sdk-java 版本升级至 4.35.9.ALL
    • [升级] com.baidu.aip 版本升级至 4.16.13

v3.0.0.0

  • 重要更新

    • Spring Boot 版本升级至 3.0.0
    • Spring Cloud 版本升级至 2022.0.0
    • Spring Authorization Server 版本升级至 1.0.0
    • Spring Cloud Tencent 版本恒机制 1.8.2-2022.0.0
    • Spring Boot Admin 版本升级至 3.0.0-M6
    • Spring Doc 版本升级至 2.0.1
  • 其它更新

    • [重构] 根据新版 Spring Authorization Server 代码结构及类命名,对 Spring Authorization Server 相关代码进行重构适配。
    • [重构] OAuth2 Application 实体类增加 authorization code time-to-live 字段。
    • [重构] OAuth2 Application 中 accessTokenTimeToLive、refreshTokenTimeToLive、authorizationCodeTimeToLive 属性的默认值,修改为与 Spring Authorization Server TokenSettings 一致。
    • [重构] 重构 Spring Authorization Server OAuth2 相关代码分包和模块结构,逻辑更内聚、职责更清晰、模块引用依赖更简洁
    • [重构] 使用 SpringSecurity 6 最新代码逻辑,重新实现接口鉴权。
    • [重构] 重构基于 Redis 的微服务 Session 共享配置代码,采用更合理的配置实现分布式微服务 Session 共享
    • [新增] 新增 Token Settings 授权码模式 Code 有效时间字段。
    • [新增] 在 Nacos 中增加 logback 配置,新增服务可外部化动态读取 logback.xml 配置模式。以便于更加灵活的进行日志输出配置。
    • [新增] 外部配置 logback.xml 中,增加 Skywalking 日志上报、ELK 日志中心日志收集、Skywalking TraceId 等支持。同时提供常规及 MDC 两种配置。
    • [新增] 在统一响应实体 Result 增加 TraceId 信息,在开启 Skywalking Tracing 的情况下,可在返回结果中,统一增加 TraceId,方便跟踪和调试。
    • [变更] 服务注册临时改为使用 zookeeper。
    • [变更] 数据库初始化脚本中的初始数据,与 Spring Authorization Server 0.4.0 最新代码适配
    • [变更] 默认 JDK 版本及 pom.xml 中 <java.version> 指定为变更为 JDK 17。
    • [变更] Docker 默认 JDK 基础镜像变更为 JDK 17。
    • [变更] spring.factories 全部替换为新版格式并启用 @AutoConfiguration。原有 ...AutoConfiguration 形式命名配置类,变更为...Configuration 形式命名。
    • [变更] 取消自定义登录页面中使用 Thymeleaf 内置 Reqeust、Session 对象,改用 Model 方式进行传递。
    • [变更] 适配新版本依赖注解引用及代码用法
    • [变更] 删除 Knife4j 相关依赖,后续版本不再提供 Knife4j API 支持。
    • [变更] 不再提供 docker-maven-plugin 支持,去除相关配置
    • [修复] 使用 Feign 调用接口时,上游接口 content_type 会传递至下游,错误的 content_type 导致下游接口调用出错问题。
    • [修复] 在 3.0.0 环境下,Thymeleaf 不再支持 Request、Session 对象调用,导致自定义 Spring Authorization Server 登录页面解析错误
    • [修复] OpenFeign 使用 OkHttp 做基础请求组件时,启动服务抛出对象无法注入错误问题。
    • [优化] 优化 git-commit-id 配置,变更为只在服务类型模块中生成相关信息,提升主工程编译速度
    • [优化] 优化 dependencies 及 pom 配置,去除冗余重复配置,降低 maven 内容的重复化配置。减少不必要的 Maven 插件配置,提升工程代码整体编译效率
    • [优化] 整体调整各类模块 pom build 配置,适当增加冗余重复配置,以支持 Spring Native 编译需要。规避对所有模块进行 Native 编译产生错误问题。
  • 配置变更

    • javax 属性节点全部变更为 jakarta
    • spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults 值修改为 true
    • org.hibernate.dialect.PostgreSQL10Dialect 变更为 org.hibernate.dialect.PostgreSQLDialect
    • Redis 相关配置全部移动到 data 属性节点下
  • 依赖升级

    • [升级] Nacos 版本升级至 2.2.0
    • [升级] wxjava 版本升级至 4.4.6.B
    • [升级] antisamy 版本升级至 1.7.2
    • [升级] redisson 版本升级至 3.19.0
    • [升级] minio 版本升级至 8.4.6
    • [升级] fastjson2 版本升级至 2.0.21
    • [升级] Hutool 版本升级至 5.8.10
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.650
    • [升级] dysmsapi20170525 版本升级至 2.0.23
    • [升级] alipay-sdk-java 版本升级至 4.35.7.ALL
    • [升级] aliyun-java-sdk-core 版本升级至 4.6.3
    • [升级] qiniu-java-sdk 版本升级至 7.12.1
    • [升级] aliyun-java-sdk-green 版本升级至 3.6.6
    • [升级] postgresql 版本升级至 42.5.1
    • [升级] jackson 版本升级至 2.14.1
    • [升级] jasypt-spring-boot-starter 版本升级至 3.0.5

v3.0.0-RC3

  • 主要更新
    • [升级] Spring Cloud 版本升级至 2022.0.0-RC3
    • [新增] Spring Cloud Tencent 熔断、限流、元数据处理支持
  • 其它更新
    • [重构] 前端 API 接口调用,修改为 proxy 代理模式,解决前后端跨域导致前端不创建 Cookie,后端 Session Id 不一致,Session 共享不生效问题。
    • [重构] 调整 Engine 工程模块结构,整合消息模块和 WebSocket 模块。
    • [修复] 修复华为云短信发送请求体类型设置错误
    • [修复] 修复模块编译组件时,vite-plugin-dts 提示找不到第三方模块抛出错误提示问题。
  • 依赖升级
    • [升级] redisson 版本升级至 3.18.1
    • [升级] alipay-sdk-java 版本升级至 4.34.86.ALL

v3.0.0-RC2

  • 主要更新
    • [升级] Spring Cloud Tencent 版本升级至 1.8.1-2022.0.0-RC2
    • [新增] 现有工程新增对 Spring Cloud Tencent 的适配和支持。
    • [新增] 新增 Spring Cloud Alibaba、Spring Cloud Tencent 和 Spring Cloud 原生全家桶微服基础设施适配切换能力,以相对便捷的方式快捷迁移使用 Alibaba、Tencent、Spring 等基础设施环境
  • 其它更新
    • [修复] 解决使用 edge 浏览器并使用 feign,报错 Unexpected char 0x0a(PR by 狂练胸肌的李大懒)
    • [修复] 修复前端唯一性字段在新建、编辑不同状态下校验不准确、状态不合理问题。解决导致编辑状态下唯一性字段数据未修改仍会校验失败问题。
    • [修复] 优化微服务分布式 Session 共享配置,解决共享 Session 不一致问题。
    • [修复] 在 docker 环境下,服务默认选择容器内部 IP 而不会映射本机 IP 问题。
    • [优化] 优化 Spring Authorization Server 认证服务配置,整理代码逻辑、去除冗余重复的配置
  • 依赖更新
    • [升级] springdoc 版本升级至 2.0.0
    • [升级] fastjson2 版本升级至 2.0.20
    • [升级] dysmsapi20170525 版本升级至 2.0.23
    • [升级] aliyun-java-sdk-core 版本升级至 4.6.3
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.641
    • [升级] alipay-sdk-java 版本升级至 4.34.71.ALL
    • [升级] aliyun-java-sdk-green 版本升级至 3.6.6
    • [升级] postgresql 版本升级至 42.5.1
    • [升级] jackson 版本升级至 2.14.1

v3.0.0-RC1

  • 主要更新
    • Spring Boot 版本升级至 3.0.0
    • Spring Authorization Server 版本升级至 1.0.0
  • 其它更新
    • [重构] 重构 Spring Authorization Server 扩展模块,调整代码结构,逻辑定位更清晰。删除无用包。
    • [重构] 使用 SpringSecurity 6 最新代码逻辑,重新实现接口鉴权。
    • [重构] 调整部分 Starter 配置类包路径
    • [变更] 服务注册发现临时改用 zookeeper
  • 依赖更新
    • [升级] spring-security-cas 版本升级至 5.8.0
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.637
    • [升级] alipay-sdk-java 版本升级至 4.34.64.ALL

v3.0.0-M5

  • 主要更新
    • [升级] Spring Cloud 版本升级至 2022.0.0-RC2
    • [修复] 修复使用 Feign 调用接口时,上游接口 content_type 会传递至下游,错误的 content_type 导致下游接口调用出错问题。
    • [修复] 在 3.0.0 环境下,Thymeleaf 不再支持 Request、Session 对象调用,导致自定义 Spring Authorization Server 登录页面解析错误
    • [优化] 优化 Okhttp 与 Feign 整合配置代码
  • 依赖更新
    • [升级] jetcache 版本升级至 2.7.1
    • [升级] redisson 版本升级至 3.18.0
    • [升级] fastjson2 版本升级至 2.0.19
    • [升级] wxjava 版本升级至 4.4.5.B
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.633
    • [升级] alipay-sdk-java 版本升级至 4.34.52.ALL
    • [升级] antisamy 版本升级至 1.7.2
    • [升级] hutool 版升级至 5.8.10

v3.0.0-M4

  • 主要更新
    • [升级] Spring Boot 版本升级至 3.0.0-RC2
    • [升级] SpringDoc 版本升级至 2.0.0-RC1
    • [升级] Skywalking Agent 版本升级至 8.13.0
    • [修复] OpenFeign 使用 OkHttp 做基础请求组件时,启动服务抛出对象无法注入错误问题。
    • [修复] 修复 Spring Cloud Gateway 不兼容低版本 SpringDoc 导致启动出错问题。
    • [修复] 优化 Gateway 请求信息拦截机制,增加对 Feign 内部无权限标记的拦截,修复内部接口被外部直接调用的安全漏洞
    • [删除] 删除 Knife4j 组件依赖,后续版本不在提供 Knife4j 支持。
    • [优化] 优化 SpringDoc 依赖关系及 Swagger UI 包引入。
    • [新增] 在 Nacos 中增加 logback 配置,新增服务可外部化动态读取 logback.xml 配置模式。以便于更加灵活的进行日志输出配置。
    • [新增] 外部配置 logback.xml 中,增加 Skywalking 日志上报、ELK 日志中心日志收集、Skywalking TraceId 等支持。同时提供常规及 MDC 两种配置。
    • [新增] 在统一响应实体 Result 增加 TraceId 信息,在开启 Skywalking Tracing 的情况下,可在返回结果中,统一增加 TraceId,方便跟踪和调试。
    • [变更] 服务注册临时改为使用 zookeeper。
  • 依赖升级
    • [升级] jackson 版本升级至 2.14.0
    • [升级] fastjson2 版本升级至 2.0.18
    • [升级] wxjava 版本升级至 4.4.4.B
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.627
    • [升级] qiniu-java-sdk 版本升级至 7.12.0
    • [升级] alipay-sdk-java 版本升级至 4.34.47.ALL

v3.0.0-M3

  • 主要更新
    • [升级] Spring Boot 版本升级至 3.0.0-RC1
    • [升级] Spring Cloud 版本升级至 2022.0.0-M5
    • [升级] Spring Authorization Server 版本升级至 1.0.0-RC1
    • [升级] Spring Boot Admin 版本升级至 3.0.0-M5
    • [升级] git-commit-id-maven-plugin 插件依赖更新
    • [重构] Openfeign HttpClient 配置改用 HttpClient5 配置方式
    • [重构] UUIDGenerator 改为 UuidGenerator
    • [重构] 所有涉及 javax 的代码,重构为适配 Jakarta。
    • [重构] 重构 Spring Authorization Server 扩展模块,调整代码结构,逻辑定位更清晰。删除无用包。
    • [重构] 使用 SpringSecurity 6 最新代码逻辑,重新实现接口鉴权。
    • [重构] 原有 JPA @GenericGenerator 注解全部使用最新支持方式替换
    • [重构] 将 JPA 过时查询缓存标记常量修改为最新常量
    • [重构] spring.factories 全部替换为新版格式
    • [重构] 重构权限数据存储、分发代码,替换原有 Spring Security 5 逻辑。
    • [新增] 临时新增 Sentinel Spring WebMvc Adapter,以解决 当前版本 Sentinel 没有没有适配 Jakarta 问题
    • [删除] 删除原有自定义 Hibernate PostgreSQL Jsonb 支持代码
    • [优化] hibernate dialect 改为 org.hibernate.dialect.PostgreSQLDialect
    • [优化] 更新 Redis 和 JetCache 配置,适配最新版 Spring Boot
    • [优化] 调整 jetcache 依赖,临时解决 Bean 注入顺序不生效问题
    • [优化] use_jdbc_metadata_defaults: true 修改为 true

v3.0.0-M2

  • 主要更新
    • [升级] Spring Authorization Server 版本升级至 0.4.0-M2
    • [重构] 重构核心代码,适配 Spring Authorization Server 0.4.0-M2。

v3.0.0-M1

  • 主要更新
    • [变更] 默认 JDK 版本及 pom.xml 中 <java.version> 指定为变更为 JDK 17。
    • [变更] Docker 默认 JDK 基础镜像变更为 JDK 17。
    • [升级] Spring Authorization Server 版本升级至 0.4.0-M1
    • [重构] 根据新版 Spring Authorization Server 代码结果及变更,对现有工程代码进行重构适配。
    • [重构] OAuth2 Application 实体类增加 authorization code time-to-live 字段。
    • [重构] OAuth2 Application 中 accessTokenTimeToLive、refreshTokenTimeToLive、authorizationCodeTimeToLive 属性的默认值,修改为与 Spring Authorization Server TokenSettings 一致。
    • [变更] 变更数据库初始化脚本中的初始数据,与最新代码适配
  • 依赖更新
    • [升级] wxjava 版本升级至 4.4.4.B
    • [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.623
    • [升级] qiniu-java-sdk 版本升级至 7.12.0
    • [升级] alipay-sdk-java 版本升级至 4.34.43.ALL