用户认证篇
2023-12-23 17:55:52
文章目录
1. 如何生成用户认证token令牌
1.1 相关表
分为访问令牌access_token和刷新令牌refresh_token, 分别保存在system_oauth2_access_token和system_oauth2_refresh_token。
访问令牌设置的过期时间一般比较短,通常为30min,刷新令牌可以设置很长时间,比如30天。访问令牌快过期,可以用刷新令牌获得一个新的访问令牌。
1.2 生成令牌逻辑
先生成刷新令牌,再生成访问令牌。
- 入口
- 生成刷新令牌
- 生成访问令牌
1.3 最终结果
2. 如何认证用户token令牌
2.1 前端组件
在前端yudao-ui-admin-vue3里面,看service.ts,拦截请求,在请求header添加访问token。
2.2 TokenAuthenticationFilter
2.3 获得登陆用户
SecurityFrameworkUtils的getLoginUser方法,2.2步骤当中已经设置在SecurityContext。
3. 如何刷新用户认证 Token 令牌
3.1 前端组件
在前端yudao-ui-admin-vue3里面,看service.ts,拦截响应。如果返回错误401,则刷新令牌。
3.2 刷新令牌接口
/system/auth/refresh-token
4. 如何模拟用户认证token令牌
http://127.0.0.1:48080/doc.html#/home
5. 如何实现URL需要登陆
主要看YudaoWebSecurityConfigurerAdapter#filterChain。
5.1 @PermitAll
这个注解上JavaEE的标准。有该注解的URL免登陆。
- 如何获得有该注解的URL。
- 免登陆
5.2 @PreAuthenticated
APP应用大部分不需要认证,比如在京东访问商品页面等,但有些场合上一定要登陆的,比如重置密码。
通过aop实现。
5.3 每个项目自定义URL规则
比如这个:
5.4 兜底
必须认证。
文章来源:https://blog.csdn.net/qq_39530821/article/details/135167445
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!