T31训练营笔记(11)用户系统实现

1. JWT
1.1 定义
Json web token,是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准。定义了一种简洁的、自包含的方法用于通信双方之间以JSON对象的形式安全的传递信息。
1.2 组成
(1)Header 头部:包含了两部分,token 类型、采用的加密算法
(2)Payload 负载:存放信息的地方
(3)Signature 签名:使用编码后的 header 和 payload 以及我们提供的一个密钥,使用 header 中指定的签名算法进行签名。
1.3 为什么使用JWT
(1)传统 token 认证,用户每次请求资源服务,资源服务都要携带令牌访问认证服务校验令牌合法性,并根据令牌获取用户信息,性能低下。
(2)JWT 认证,可以利用公钥、私钥完成对令牌的加密。
1.4 JWT 使用
(1)授权中心和资源中心持有私钥和公钥
(2)私钥颁发令牌
(3)公钥验证令牌

2. 用户角色管理
2.1 RBAC 模型
RBAC(role base access control)是一种设计模式,是用来设计和管理权限相关数据的一种模型。

3. 登录功能实现
3.1 登录流程
前端提交用户名、密码
用户微服务得到用户名密码
用户微服务组织数据(client_id、client_secret、用户名、密码)
用户微服务使用 RestTemplate 发送 HTTP 请求给授权中心微服务
授权中心微服务校验通过颁发令牌
前端将令牌存储到sessionStorage中,下次访问资源服务器通过 Header 携带访问

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值