zlt-mp v5.4.0 发布,基于 Spring Cloud Alibaba 的微服务平台

来源: 投稿
作者: zlt2000
2022-07-11 07:01:00

功能介绍

更新内容

特性 / 增强

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

更新内容

一、支持webSocket接口鉴权

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

@ServerEndpoint(value = "/websocket/test", configurator = WcAuthConfigurator.class)

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

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

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

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

SysUser user = LoginUserContextHolder.getUser()

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

  1. 服务依赖 zlt-common-spring-boot-starter

  2. 请求的入口方法需要鉴权(排除鉴权的无法使用)

三、增加手动token鉴权工具

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

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

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 评论
6 收藏
分享
返回顶部
顶部