当前位置:网站首页 > R语言数据分析 > 正文

swagger2配置security(swagger2配置登录)



主要是三个框架的集成配置,以及各个独立的配置(主要是 JWT + Security 的登录验证)。

流程:

  • 构建 Spring Boot 基本项目,准备数据库表 User —— 用于存放登录实体类信息。
  • 配置 Security 和 Swagger2 环境,确保没有什么问题。
  • 构建 ,,
  • 让 User 实现 接口,重写部分方法。
  • 配置 Security 实现重写 方法,以及 并加上 注解。这两个主要用于设置 Security 的认证。
  • 构建 类——自定义 JWT Token 拦截器,并在 的授权方法中添加此拦截器。
  • 在 配置类中,配置有关 Security 的 Token 认证。
  • 启动项目查看代码是否准确。

项目子模块:,父模块已引入

 
  

构建数据库表:user

 
  

配置 文件参数:

 
  

User 实体类代码:

 
  

先配置好这两个确保没有什么问题,因为重点是 JWT,这两个配置比较简单,当搭配了 JWT 之后,Swagger2 也需要与两者集成一些配置,这个后面再说,现在只配置基本设置。

 
  

上面使用 放行了 请求,在 中。

 
  

这意味除了 会被放行,其他请求都会被 Security 拦截重定向到 (这个请求 Security 内部已经实现了包括相关页面)。

 
  

运行效果:

image-20230305095856050

修改一下 Rustful 风格,并加了一个 请求,不放行,打印内容相同。

image-20230305100904394

image-20230305100944517

可以看到 Security 和 Swagger2 基本配置完成。

JWT 工具类主要用于生成 JWT,判断 JWT 是否有效,刷新 JWT 等方法。

公共响应对象——,返回的都已 JSON 格式返回。

 
  
 
  

由于 Security 框架的性质,自定义授权和认证时,一般情况下会自定义 UserDetails。

 
  

这个类就只有一个方法:

,该方法用于根据用户名加载用户信息,用作于 Security 的后续认证,同时也可以用一个类去实现该接口,这里为了方便,同时也是 Lambda 表达式。

注意:这里的 没有代码展示了,就一个根据用户名查询用户信息的 SQL。

 
  

这个类主要用于验证表单提交的密码是否和 重写之后的 UserDetailsServer 得到的 UserDetails 中的加密密码一致。

 
  
 
  
 
  
 
  

 
  

,使用的时 MVC 模式,所以只展示实现类:

 
  

由于 JWT 的加入,所以 Swagger2 的方法请求也是需要带入 JWT 令牌,提供了 Security 的全局认证。

只展示了修改的部分。

 
  

修改的部分直接 CV 大法即可。

image-20230305113336813

可以看到利用 Swagger2 的调试,返回 JWT Token 令牌成功!

 
  

将令牌设置到 Swagger2 中

image-20230305113500682

这样之前的 就可以请求成功了:

image-20230305113540793

说明 Swagger2 设置 JWT 也成功了,每次发送请求,头部都会携带 JWT 令牌。

还是对 Security 不太熟悉,Swagger2 的配置比较固定

JWT 主要也是两个点:

  • JWT Token Utile 工具类,主要用于管理 JWT 令牌。
  • JWT Token Filter JWT 拦截器,这个就是 Security 和 JWT 的集成了,以及请求发来的时候解析 JWT 从而完成免登录这一操作
到此这篇swagger2配置security(swagger2配置登录)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • prdlms怎么读(prblms怎么念)2025-06-05 22:27:09
  • pycharm conda 虚拟环境(pycharm使用虚拟环境)2025-06-05 22:27:09
  • lvcreate(lvcreate命令)2025-06-05 22:27:09
  • arguing用法(argue的用法总结)2025-06-05 22:27:09
  • 虚拟机windows7镜像文件下载(vmware虚拟机win7镜像)2025-06-05 22:27:09
  • swagger的配置(swagger configuration)2025-06-05 22:27:09
  • rpro怎么读(rprotect怎么读)2025-06-05 22:27:09
  • yarn命令(yarn命令 介绍linux)2025-06-05 22:27:09
  • vmware密钥(vmware密钥能用几次)2025-06-05 22:27:09
  • prim算法(prim算法生成的最小生成树唯一吗)2025-06-05 22:27:09
  • 全屏图片