day02_登录认证_实名认证审核
2022-08-03 20:27:39 3 举报
个人小结,随便画画
作者其他创作
大纲/内容
article数据库ap_author
原始密码: abc加密后: 900150983cd24fb0d6963f7d28e17f72
{\"sub\": \"1234567890\",\"name\": \"asdasdasd\",\"admin\": true}
AdLoginController检查用户名密码 9 生成token
token的组成 + Https
wemedia数据库wm_user
成功
http://localhost:6001/user/api/v1/auth/authPass
运营端查询
用户登录
Controller
1
5. 将token存入浏览器本地localStorge中
原始密码: abc盐: QdA77uWMXI加盐混淆加密后: 17237e135c72df21a3a130f5c21ea10b
ap_user_realname app用户实名认证表status 2 9
wm_user自媒体用户信息表
1. 检查参数2. 根据ID查询实名认证信息3.判断实名认证状态是否为待审核4. 查询实名认证用户关联的ap_user信息5.更新实名认证表数据状态6.如果 状态为9 生成自媒体账号 生成作者信息7. 修改关联apUser为自媒体人
访问需要登录资源
ThreadLocalMap
article微服务
900150983cd24fb0d6963f7d28e17f76 cbc
验证用户名密码
3. 请求登录usernamepassword
900150983cd24fb0d6963f7d28e17f72 abc
根据APP用户ID查询关联作者
https://www.cmd5.com/
1:1
user微服务
Integer intLocal
提示需要登录
wemedia微服务
HMACSHA256(base64UrlEncode(header) + \".\" +base64UrlEncode(payload),secret 123456)
4
t1
{ \"alg\": \"HS256\", \"typ\": \"JWT\"}
900150983cd24fb0d6963f7d28e17f73 abd
其它微服务
T2线程span style=\"font-size: inherit;\
900150983cd24fb0d6963f7d28e17f75 bbc
app用户提交认证
生成token
4. 返回token
资源
1. 未登录 访问
t2
注意: 不要存储敏感数据
拦截器解析token
无状态登录 服务端不保存用户信息通过解析token得到用户信息
axios : localhost:6001/admin/api/v1/channels/list
admin微服务/api/v1/channels/list 频道列表
运营管理端前端网站频道列表
登录成功
gateway api网关路由 Path /admin/**uri lb://leadnews-admin路由Path = /user/**uri lb://leadnews-user
6. header中携带用户ID
ap_authorapp文章作者信息表
其它微服务serivcedao
作用: 记录加密算法类型
登录失败
user数据库ap_userap_user_realname
彩虹表
保存作者信息
保存用户
900150983cd24fb0d6962f7d28e17f74 abe
User信息存入session
有状态登录 用户信息保存在服务端在分布式环境中涉及session共享问题
调用
feign
ap_user_realname(1 待审核 2失败 9通过)
3
注册中心 nacosleadnews-admin : localhost:9001
作用: 根据header、payload部分内容,加密钥进行加密,防止jwt内容被串改
http://leadnews.admin.com
user微服务/api/v1/user/list 用户列表
按照名称查询用户
登录成功 颁发token
ewoJImFsZyI6ICJIUzI1NiLvvIwKCSJ0eXAiOiAiSldUIgp9.ewoJInN1YiI6ICIxMjM0NTY3ODkwIu+8jAoJIm5hbWUiOiAiNDU2Iu+8jAoJImFkbWluIjogdHJ1ZSwKICAgICJpZCI6IDEyMwp9.U2FsdGVkX1+L8Qav9nPAK2qU9LBNQ40le2Lro6WSvXGEV3IF8EEh+eUUFGryPfyM6o81XmoAd8yMAtR+W4ljaLoXe9GnxO3o4hHAaQGLnRrP9PWRgwXXFmAa0QzbIQ0uKRn27n1Pi2htYpHXrzYy70wx//Sm/nFAHWtSVkg8B4VjdJmKPdT+awEmoTQpcsz2D7+w1u3CgjUIJEoHRY6jSuJ6hT3Ux1AaJfCz+ZPWhwI=
ap_user app用户信息表
admin数据库ad_user
signature
admin微服务
Article微服务
全局过滤器:判断请求路径是否需要拦截登录权限不需要拦截直接放行需要拦截,查看header是否携带token解析token 获取token中登录的用户ID将用户ID放入到header中放行,带入其它微服务
网关
header
2. 返回 401 无权限
ThreadLocal
payload
过滤器: 读取header中ID 存入 ThreadLocal中 getHeader() threadLocal.set(小花)
拦截器拦截检查session中是否有用户信息
Service// 获取当前登录用户threadLocal.get()
6. 请求中携带token访问
0 条评论
回复 删除
下一页