从0构建Oauth2Server服务之Refreshing-access-tokens

 更新时间:2023年08月15日 10:41:45   作者:demo007x  
这篇文章主要为大家介绍了从0构建Oauth2Server服务之Refreshing-access-tokens刷新令牌示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

刷新令牌 Refreshing-access-tokens

如何让您的开发人员使用刷新令牌来获取新的访问令牌。如果您的服务随访问令牌一起发出刷新令牌,则您需要实现此处描述的刷新授权类型。

请求参数

访问令牌请求将包含以下参数。

grant_type(必需的)

grant_type参数必须设置为“refresh_token”。

refresh_token(必需的)

先前颁发给客户端的刷新令牌。

scope(选修的)

请求的范围不得包括未在原始访问令牌中发布的其他范围。通常这不会包含在请求中,如果省略,服务应该发出一个与之前发出的范围相同的访问令牌。

客户端身份验证(如果客户端被授予机密则需要)

通常,刷新令牌仅用于机密客户端。但是,由于可以在没有客户端密码的情况下使用授权代码流,因此没有密码的客户端也可以使用刷新授权。如果向客户端发出了一个秘密,则客户端必须对该请求进行身份验证。通常,该服务将允许附加请求参数client_idclient_secret,或者接受 HTTP 基本身份验证标头中的客户端 ID 和密码。如果客户端没有密码,则此请求中不会出现客户端身份验证。

验证刷新令牌授予

在检查了所有必需的参数并验证了客户端(如果向客户端发出了秘密)之后,授权服务器可以继续验证请求的其他部分。

然后服务器检查刷新令牌是否有效,并且没有过期。如果刷新令牌已颁发给机密客户端,则服务必须确保请求中的刷新令牌已颁发给经过身份验证的客户端。

如果一切正常,该服务可以生成访问令牌并做出响应。服务器可能会在响应中发出新的刷新令牌,但如果响应不包含新的刷新令牌,则客户端会假定现有的刷新令牌仍然有效。

例子

以下是服务将接收的刷新授权示例。

POST /oauth/token HTTP/1.1
Host: authorization-server.com
grant_type=refresh_token
&refresh_token=xxxxxxxxxxx
&client_id=xxxxxxxxxx
&client_secret=xxxxxxxxxx

Response

对刷新令牌授予的响应与发出访问令牌时的响应相同。您可以选择在响应中发出新的刷新令牌,或者如果您不包含新的刷新令牌,则客户端假定当前的刷新令牌将继续有效。

以上就是从0构建Oauth2Server服务之Refreshing-access-tokens的详细内容,更多关于Oauth2Server服务构建的资料请关注脚本之家其它相关文章!

相关文章

  • SpringBoot实现application.yml文件敏感信息加密

    SpringBoot实现application.yml文件敏感信息加密

    本文主要介绍了SpringBoot实现application.yml文件敏感信息加密,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • 基于Java的Socket多客户端Client-Server聊天程序的实现

    基于Java的Socket多客户端Client-Server聊天程序的实现

    这篇文章主要介绍了基于Java的Socket多客户端Client-Server聊天程序的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • spring boot使用sonarqube来检查技术债务

    spring boot使用sonarqube来检查技术债务

    今天小编就为大家分享一篇关于spring boot使用sonarqube来检查技术债务,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • JDK14性能管理工具之Jconsole的使用详解

    JDK14性能管理工具之Jconsole的使用详解

    JConsole是JDK自带的管理工具,在JAVA_HOME/bin下面,直接命令JConsole即可开启JConsole。接下来通过本文给大家分享JDK14性能管理工具之Jconsole的使用,感兴趣的朋友一起看看吧
    2020-05-05
  • JAVA利用顺序表实现“杨辉三角”的思路及代码示例

    JAVA利用顺序表实现“杨辉三角”的思路及代码示例

    杨辉三角形是中国古代数学的杰出研究成果之一,是我国北宋数学家贾宪于1050年首先发现并使用的,这篇文章主要介绍了JAVA利用顺序表实现杨辉三角的思路及代码示例,需要的朋友可以参考下
    2025-01-01
  • JVM处理未捕获异常的方法详解

    JVM处理未捕获异常的方法详解

    这篇文章主要给大家介绍了关于JVM处理未捕获异常的相关资料,文中通过示例代码以及图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • 两个小例子轻松搞懂 java 中递归与尾递归的优化操作

    两个小例子轻松搞懂 java 中递归与尾递归的优化操作

    这篇文章主要介绍了两个小例子轻松搞懂 java 中递归与尾递归的优化操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • springboot2版本无法加载静态资源问题解决

    springboot2版本无法加载静态资源问题解决

    这篇文章主要介绍了springboot2版本无法加载静态资源问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • SpringCloud 服务网关路由规则的坑及解决

    SpringCloud 服务网关路由规则的坑及解决

    这篇文章主要介绍了SpringCloud 服务网关路由规则的坑及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • 解决eclipse中maven引用不到已经存在maven中jar包的问题

    解决eclipse中maven引用不到已经存在maven中jar包的问题

    这篇文章主要介绍了解决eclipse中maven引用不到已经存在maven中jar包的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10

最新评论