Sa-Token v1.43.0 发布:SSO 单设备注销与消息推送机制全面升级
项目简介
Sa-Token 是一款轻量级 Java 权限认证框架,主要解决登录认证、权限认证、单点登录、OAuth2.0、分布式会话等常见权限控制问题。其设计简洁、API 友好,支持快速集成到各类 Java 项目中。最新发布的 v1.43.0 版本带来了多项重要功能增强,特别是在单点登录(SSO)和 OAuth2 方面的能力提升尤为显著。
核心功能增强
本次更新中,Sa-Token 在核心模块引入了多项实用功能:
-
精细化注销控制:新增的
SaLogoutParameter支持通过deviceId参数实现指定设备的精准注销,这在多设备登录场景下特别有用。 -
HTTP 请求处理模块:新增的
SaHttpTemplate模块为开发者提供了统一的 HTTP 请求处理能力,简化了与外部服务的交互过程。 -
TOTP 增强:TOTP(基于时间的一次性密码)功能增加了
issuer字段支持,提高了双因素认证的安全性。 -
注解鉴权扩展:
@SaCheckOr注解新增append字段,支持动态抓取未预先定义的注解类型进行批量鉴权,大大提升了权限控制的灵活性。
单点登录(SSO)重大升级
SSO 模块在本版本中获得了多项关键性改进:
-
单设备注销能力:解决了多设备登录场景下的精细化控制问题,现在可以精确控制只注销特定设备的会话,而不影响用户在其他设备上的登录状态。
-
消息推送机制:新增的消息推送功能为系统间通信提供了标准化方案,特别适合分布式环境下的状态同步需求。
-
客户端精细化配置:通过新增的
clients配置项,可以为每个客户端单独配置授权信息,实现了更细粒度的权限管理。 -
匿名客户端支持:新增的
allowAnonClient配置项允许系统支持匿名客户端访问,为特殊业务场景提供了更多可能性。 -
策略模式增强:新增的
convertCenterIdToLoginId和convertLoginIdToCenterId策略函数,解决了认证中心与本地系统用户标识转换的标准化问题。
OAuth2 功能强化
OAuth2 模块在本版本中同样获得了多项重要更新:
-
自动授权确认:新增的
isAutoConfirm配置项允许应用自动确认授权,简化了用户操作流程。 -
多令牌并存:支持多
Access-Token、多Refresh-Token和多Client-Token并存,解决了同一用户多设备同时访问时的令牌管理问题。 -
策略模式优化:将认证流程回调从配置类转移到策略类,提高了代码的可扩展性和可维护性。
-
用户授权检查:新增的
userAuthorizeClientCheck策略提供了用户与应用授权关系的自定义检查能力。
插件生态扩展
Sa-Token 的插件生态在本版本中得到了进一步丰富:
-
新增 HTTP 客户端插件:
sa-token-forest和sa-token-okhttps插件分别整合了 Forest 和 OkHttps 两个流行的 HTTP 客户端。 -
模块拆分优化:将 API Key 和 API Sign 功能拆分为独立插件包,提高了模块的独立性和可维护性。
-
序列化改进:修复了多个插件中的序列化问题,提升了系统的稳定性和兼容性。
文档与示例完善
本次更新还包含了大量文档和示例的改进:
-
新增离线文档:方便开发者在无网络环境下查阅。
-
新增示例项目:包括 SSE 鉴权示例、ReSdk 模式对接示例和匿名应用模式对接示例等。
-
文档内容优化:对 SSO 和 OAuth2 章节进行了全面梳理,增加了更多实用场景的说明和示例。
总结
Sa-Token v1.43.0 版本在功能丰富性、使用便捷性和系统稳定性方面都取得了显著进步。特别是 SSO 模块的单设备注销和消息推送机制,以及 OAuth2 模块的多令牌并存能力,为开发者处理复杂业务场景提供了更多可能性。这些改进使得 Sa-Token 在权限控制领域的竞争力进一步提升,值得开发者关注和升级。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C080
baihu-dataset异构数据集“白虎”正式开源——首批开放10w+条真实机器人动作数据,构建具身智能标准化训练基座。00
mindquantumMindQuantum is a general software library supporting the development of applications for quantum computation.Python056
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7GLM-4.7上线并开源。新版本面向Coding场景强化了编码能力、长程任务规划与工具协同,并在多项主流公开基准测试中取得开源模型中的领先表现。 目前,GLM-4.7已通过BigModel.cn提供API,并在z.ai全栈开发模式中上线Skills模块,支持多模态任务的统一规划与协作。Jinja00
agent-studioopenJiuwen agent-studio提供零码、低码可视化开发和工作流编排,模型、知识库、插件等各资源管理能力TSX0131
Spark-Formalizer-X1-7BSpark-Formalizer 是由科大讯飞团队开发的专用大型语言模型,专注于数学自动形式化任务。该模型擅长将自然语言数学问题转化为精确的 Lean4 形式化语句,在形式化语句生成方面达到了业界领先水平。Python00