1

当用户携带token 请求资源服务器的资源时, OAuth2AuthenticationProcessingFilter 拦截token,进行token 和userdetails 过程,把无状态的token 转化成用户信息
image.png
1.OAuth2AuthenticationManager.authenticate(),filter执行判断的入口
image.png
2.当用户携带token 去请求微服务模块,被资源服务器拦截调用RemoteTokenServices.loadAuthentication ,执行所谓的check-token过程。 源码如下
image.png
3.DefaultAccessTokenConverter extractAuthentication  方法中
最重要的一步,是否判断是否有userDetailsService实现,如果有 的话去查根据 返回的 username 查询一次全部的用户信息,没有实现直接返回username,这也是很多时候问的为什么只能查询到username
image.png


Redorblack
39 声望0 粉丝

后端菜鸟记录美好生活