基于spring security auth2 +jwt的sso单点登录

基于spring security auth2 +jwt的sso单点登录

未登录系统1.png

1.访资源接口:前端判断是否带token。
2.没有token,调用CRM代理的授权接口并带上系统标识(区分客户端用)
3.CRM代理的授权接口进行转发到uaa前端的授权页
4.uaa前端授权页调用uaa的代理授权接口。
5.uaa后端验证未登录,重定向到uaa登录页并带上系统标识。
6.输入账号和密码。
7.调用登录接口。
8.登录成功以后,由前端调用uaa的代理授权接口并带上系统标识。
9.授权成功后跳转到crm的授权码页面。
10.前端在授权码页拿到code,调用crm的代理获取token接口(crm系统的代理获取token接口直接调uaa的token接口)。
11.返回token,crm前端拿token访问资源。

基于spring security auth2 +jwt的sso单点登录

已登录系统2.png

1.访问资源接口:前端判断是否带token。
2.没有token,调用CRM代理的授权接口并带上系统标识(区分客户端用)。
3.CRM代理的授权接口进行转发到uaa前端的授权页。
4.uaa前端授权页调用uaa的代理授权接口。
5.uaa后端验证已登录,跳转到cms的授权码页面。
6.前端在授权码页拿到code,调用crm的代理获取token接口(crm系统的代理获取token接口直接调uaa的token接口)
7.返回token,crm前端拿token访问资源。

基于spring security auth2 +jwt的sso单点登录

刷新token.png

基于spring security auth2 +jwt的sso单点登录

filter组成.png

从调用上来看,针对不同的请求,security-oauth2对应的filter是不一样的。代码入口FilterChainProxy.doFilterInternal.
获取token、token_key等接口时会把Client_id和Client_secret做为身份信息去调用,其他的接口则必须走用户校验,所以两者是有区别的。
所以需要保证,授权的时候,session必须一致,这样才能拿到登录了的身份信息,所以流程里面只要是授权都要调到uaa前端统一去调用,以保证uaa后端能够根据sessionId拿到已登录的身份信息。
到此为止,统一登录的问题已解决。
接下来是解决统一登出的问题:
我采用的方案是:
1.登录成功后,将login:user_id作为key,时间戳作为值放入缓存中,在获取token的时候,从缓存中拿到值,放到jwt中。
2.资源服务器在解析token的时候,拿到token的附加信息loginVersion,然后将loginVersion与缓存中的值比较,不一致说明,已退出登录。
3.推出登录时将缓存的信息移除
demo地址(前后分离,包含前端代码):https://github.com/mushang8923/sso-jwt.git

文章均来自互联网如有不妥请联系作者删除QQ:314111741 地址:http://www.mqs.net/post/12600.html

相关阅读

  • R语言dplyr包处理数据2021.3.6

    R语言dplyr包处理数据2021.3.6

    图1 筛选结果 2.2 去除重复行–distinct函数 dplyr::distinct(rbind(iris[1:10,],iris[1:20,]))#取出前10行和前20行合并后去除重复行 图2 去除结果...

    2025.12.09 05:35:02作者:iseeyu
  • 产品推广的方式有哪些(79种推广方式总有一种适合你)

    产品推广的方式有哪些(79种推广方式总有一种适合你)

    产品的推广是企业的一个重要环节。产品的推广,不仅是让消费者了解产品,而且还能够让企业在网络上获取更多品牌影响力。只有做好了产品推广,才能够让企业在品牌建设中取得更大的成就。那么产品推广应该怎么做?不同的产品使用不同推广法。但任何一...

    2025.12.09 02:51:31作者:iseeyuTags:推广
  • 淘宝怎么运营推广(中小卖家必学的操作思路)

    淘宝怎么运营推广(中小卖家必学的操作思路)

    淘宝在很长一段时间内,一直被认为是中国最大的电子商务平台。人们在这里购物,与在别处购物一样,会感觉到很便捷、很实惠。因此,随着电商行业的发展。如今,淘宝网站的活跃用户数已经超过了1亿人(目前该数据仅统计了部分用户)。而作为一个淘宝...

    2025.12.09 01:56:09作者:iseeyuTags:运营

添加新评论