目录

一 总结

1.1 方案1:通过普通令牌

1.2 方案2:使用jwt令牌

二 校验token

2.1 案例说明


一 总结

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 校验令牌的有效性,并查询令牌的内容,例子如下:

Logo

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

更多推荐