更新时间:2025-01-09 GMT+08:00
分享

devspore-auth自定义token解析认证

模块依赖设计图

图1 devspore-auth插件依赖
图2 模块依赖图

开发环境准备

需提前安装的工具,包括JDK、Maven、Eclipse和IDEA,配置对应的环境变量,确保本地开发环境可用。

工作原理

  • 引入devspore-auth-starter依赖后,会在SDK内自动注册认证Filter:AuthAuthenticationFilter。
  • 调用业务接口时会自动执行已注册的认证Filter,AuthAuthenticationFilter.doFilterInternal中将通过SPI方式先调用TokenParser的实现类(DefaultTokenParser,用户可自定义)完成token解析。
  • AuthAuthenticationFilter.doFilterInternal在token解析成功后将解析出的用户信息通过SPI方式调用UserStore的实现类(DefaultUserStore,用户可自定义)存储用户信息供后续业务代码使用。
  • TokenParser接口介绍详见:TokenParser接口介绍
  • UserInfo用户信息类介绍详见:UserInfo用户信息类
  • UserStore接口介绍详见:UserStore接口介绍

认证配置

认证配置详见:认证配置

配置说明

配置说明详见:配置说明

使用devspore-auth通用认证能力

  1. 添加依赖。

    代码中添加devspore-auth-starter依赖。

    <dependency>
        <groupId>com.huaweicloud.devspore</groupId>
        <artifactId>devspore-auth-starter</artifactId>
        <version>${devspore-auth-starter.version}</version>
    </dependency>

    TokenParser实现类与UserStore实现类,均需注册成bean,并完成bean扫描,确保Spring容器中可获取到对应bean。

  2. 实现TokenParser接口:详见实现TokenParser接口示例
  3. 实现UserStore接口:详见实现UserStore接口
  4. 添加认证配置:在配置文件中加入devspore相关配置,详见认证配置

时序图

使用devspore完成认证鉴权模块调用时序图,如图3所示。
图3 模块调用时序图

相关文档