返回顶部
首页 > 资讯 > 精选 >spring cloud oauth3整合JWT后获取用户信息不全怎么办
  • 535
分享到

spring cloud oauth3整合JWT后获取用户信息不全怎么办

2023-06-19 11:06:39 535人浏览 安东尼
摘要

本篇内容主要讲解“spring cloud oauth3整合Jwt后获取用户信息不全怎么办”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“spring cloud oauth3整合JWT后获取用户

本篇内容主要讲解“spring cloud oauth3整合Jwt后获取用户信息不全怎么办”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习spring cloud oauth3整合JWT后获取用户信息不全怎么办”吧!

oauth3整合JWT完成后,发现获取当前认证用户信息(Principal)时只获取到用户名称,没有其他的信息

spring cloud oauth3整合JWT后获取用户信息不全怎么办

看了一下oauth3源码,通过分析oauth3加载TokenStore找到解决方案。

oauth3会在DefaultUserAuthenticationConverter下提取认证用户,并给Principal进行赋值

spring cloud oauth3整合JWT后获取用户信息不全怎么办

因为userDetailsService没有被注入进去,所以获取的Principal的值只有“admin”。问题是什么时候注入userDetailsService

spring cloud oauth3整合JWT后获取用户信息不全怎么办

userDetailsService是当前类的属性,这就好办了。

接着看这个类DefaultAccessTokenConverter,这个类定义了DefaultUserAuthenticationConverter,并调用了DefaultUserAuthenticationConverter.extractAuthentication的方法

spring cloud oauth3整合JWT后获取用户信息不全怎么办

spring cloud oauth3整合JWT后获取用户信息不全怎么办

看到这里我们发现,找到这个类DefaultAccessTokenConverter的注入就可以了。

接下来是这个类JwtAccessTokenConverter,这里定义了DefaultAccessTokenConverter,调用了DefaultAccessTokenConverter.extractAuthentication的方法,是不是感觉和上一个套路一样。

spring cloud oauth3整合JWT后获取用户信息不全怎么办

spring cloud oauth3整合JWT后获取用户信息不全怎么办

JwtTokenStore大家应该很熟悉,就是定义了JwtAccessTokenConverter,并调用JwtAccessTokenConverter.extractAuthentication但是没有具体实现,可以通过构造方法进行注入。

spring cloud oauth3整合JWT后获取用户信息不全怎么办

spring cloud oauth3整合JWT后获取用户信息不全怎么办

看到这里就找到了userDetailsService应该怎么注入进去了。另外,大家也可以关注一下这个类的另一个方法

spring cloud oauth3整合JWT后获取用户信息不全怎么办

其实是这个方法调用的上个方法,这个方法被调用在在DefaultTokenServices这个类里

spring cloud oauth3整合JWT后获取用户信息不全怎么办

打开这个类DefaultTokenServices看看,你就会发现这个类定义了token的一些基本功能

spring cloud oauth3整合JWT后获取用户信息不全怎么办

最后看一下效果

spring cloud oauth3整合JWT后获取用户信息不全怎么办

到此,相信大家对“spring cloud oauth3整合JWT后获取用户信息不全怎么办”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: spring cloud oauth3整合JWT后获取用户信息不全怎么办

本文链接: https://lsjlt.com/news/295723.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • spring cloud oauth3整合JWT后获取用户信息不全怎么办
    本篇内容主要讲解“spring cloud oauth3整合JWT后获取用户信息不全怎么办”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“spring cloud oauth3整合JWT后获取用户...
    99+
    2023-06-19
  • Python Web框架Django怎么使用jwt获取用户信息
    这篇文章主要介绍“Python Web框架Django怎么使用jwt获取用户信息”,在日常操作中,相信很多人在Python Web框架Django怎么使用jwt获取用户信息问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对...
    99+
    2023-06-01
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作