架构图
功能介绍
更新内容
特性/增强
- 支持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 层使用以下方法:
代码语言:javascript复制SysUser user = LoginUserContextHolder.getUser()
需要服务满足以下两个条件:
- 服务依赖 zlt-common-spring-boot-starter
- 请求的入口方法需要鉴权(排除鉴权的无法使用)
三、增加手动token鉴权工具
zlt-auth-client-spring-boot-starter
依赖只会对 http
请求进行拦截鉴权。
对于其他协议如 webSocket
、dubbo
、MQ
等如果需要进行 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