springsecurity+OAuth2.0-第12章:分布式认证授权案例-jwt令牌和普通令牌的区别6(第5,6章节的总结篇)
·
目录
一 总结
1.1 方案1:通过普通令牌
文章第4节,访问资源服务的时候,还要对token进行通过调用远程认证服务进行校验。
方案1:通过普通令牌
1.通过访问认证授权服务器获取授权码,再通过授权码获取token令牌,最后拿到token令牌访问资源服务
2.资源服务远程调用认证授权服务器验证token合法性,验证通过则访问资源,否则拒绝访问资源。如图配置的远程调用checktoken配置

1.2 方案2:使用jwt令牌
文章第5节,使用jwt的token,在不需要调用认证服务器,因为自身就是携带了用户的信息。
方案1缺点是,当资源服务和授权服务不在一起的时候资源服务使用RemoteTokenService远程请求授权服务验证,如果访问量较大将会影响系统的性能。使用jwt令牌可以解决上述问题。
Jwt可以使用HMAC算法或者使用RSA的公钥/私钥来签名,防止篡改。通过非对称加密算法以及数字签名技术,jwt防止篡改,安全性高,资源服务使用jwt可以实现不依赖认证服务即可完成授权。
1.通过访问认证授权服务器获取授权码,再通过授权码获取token令牌,最后拿到token令牌访问资源服务
2.资源服务使用jwt本地验证token的合法性(无需远程调用认证服务),验证通过则访问资源,否则拒绝访问资源。如图

二 校验token
2.1 案例说明
令牌申请成功可以使用 /uaa/oauth/check_token 校验令牌的有效性,并查询令牌的内容,例子如下:

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐



所有评论(0)