ZLT-MP v5.4.0 发布

2022-11-11 13:51:34 浏览数 (1)

架构图

功能介绍

更新内容

特性/增强

  • 支持webSocket接口鉴权
  • 增加webSocket鉴权样例工程
  • 支持手动获取当前登录人对象
  • 增加手动token鉴权工具
  • 增加资源服务样例工程
  • 解决只要请求携带access_token,排除鉴权的url依然会被拦截的问题
  • 升级spring-boot到2.5.14

内容说明

一、支持webSocket接口鉴权

增加 webSocket 接口的通用鉴权拦截器,使用方式如下:

代码语言:javascript复制
@ServerEndpoint(value = "/websocket/test", configurator = WcAuthConfigurator.class)

@ServerEndpoint 注解中添加 configurator 参数,指定 WcAuthConfigurator.class

详细请参考样例工程 websocket-demo

二、支持手动获取当前登录人对象

在 contoller、service 或者 dao 层使用以下方法:

代码语言:javascript复制
SysUser user = LoginUserContextHolder.getUser()

需要服务满足以下两个条件:

  1. 服务依赖 zlt-common-spring-boot-starter
  2. 请求的入口方法需要鉴权(排除鉴权的无法使用)

三、增加手动token鉴权工具

zlt-auth-client-spring-boot-starter 依赖只会对 http 请求进行拦截鉴权。

对于其他协议如 webSocketdubboMQ等如果需要进行 token 鉴权,可手动使用以下方法:

代码语言:javascript复制
SysUser user = AuthUtils.checkAccessToken(String accessTokenValue)

四、增加资源服务样例工程

增加工程 resources-server-demo 以最简化的代码演示如何快速集成一个带鉴权功能的服务,适用于 无网络隔离 架构。

对于 无网络隔离 架构,每个暴露 http 接口服务都需要进行 access_token 鉴权。

五、解决排除鉴权的url依然会被拦截的问题

由于 Security 默认的机制,只要请求携带了 access_token 参数,无论是否配置了排除鉴权,都必定会进行鉴权;

新版本解决了上述问题。

项目地址

Gitee地址:https://gitee.com/zlt2000/microservices-platform

Github地址:https://github.com/zlt2000/microservices-platform

项目文档

https://www.kancloud.cn/zlt2000/microservices-platform/919417

项目更新日志

https://www.kancloud.cn/zlt2000/microservices-platform/936235

0 人点赞