SpringBootSecurity中OAuth2.0怎样刷新token

本篇文章给大家分享的是有关SpringBootSecurity中OAuth2.0怎样刷新token,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

我们拥有十余年网页设计和网站建设经验,从网站策划到网站制作,我们的网页设计师为您提供的解决方案。为企业提供网站建设、成都网站建设、微信开发、小程序制作手机网站制作H5开发、等业务。无论您有什么样的网站设计或者设计方案要求,我们都将富于创造性的提供专业设计服务并满足您的需求。

刷新token

前面的例子和配置都是从头开始申请授权码和令牌,现在来看一下如何根据获取令牌时,回参中的 refresh_token 来刷新令牌。现在在项目中配置的是内存模式的默认用户名密码,第一步先改成数据库查询的方式,具体过程参考前面的文章即可,来看security配置类:

SpringBootSecurity中OAuth2.0怎样刷新token

然后修改授权服务配置类,在 endpoints 中配置userDetailsService:

SpringBootSecurity中OAuth2.0怎样刷新token

修改成数据库方式也是为了创建userDetailsService对象,刷新令牌时会根据此对象对用户信息进行检查。这样刷新令牌的配置就完成了。

测试

首先根据前面的正常流程,申请授权码,然后获取到令牌:

SpringBootSecurity中OAuth2.0怎样刷新token

回参中有一个参数是 refresh_token 这个参数就是专门用来刷新令牌的,下面来看如何刷新令牌。刷新令牌和获取令牌一样,需要用post的方式访问同一个地址 :

  • /oauth/token

不同的是,刷新令牌需要四个参数:

  • grant_type:值必须是 refresh_token

  • client_id

  • client_secret

  • refresh_token : 上次获取令牌时回参中的 refresh_token

通过上面四个参数可以看出,刷新令牌中每次变化的参数只有refresh_token。我们来使用本次获取的 refresh_token 来刷新令牌:

SpringBootSecurity中OAuth2.0怎样刷新token

可以看到刷新令牌和从头开始获取令牌返回的结果是一样的,使用本次刷新请求中返回的refresh_token替换上面的参数,还可以再次刷新。有兴趣可以多试几次。

代码地址: https://gitee.com/blueses/spring-boot-security 25

以上就是SpringBootSecurity中OAuth2.0怎样刷新token,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。


新闻名称:SpringBootSecurity中OAuth2.0怎样刷新token
网站链接:http://csdahua.cn/article/jjjoeh.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流