從0構(gòu)建Oauth2Server服務(wù)之Refreshing-access-tokens


刷新令牌 Refreshing-access-tokens
如何讓您的開發(fā)人員使用刷新令牌來獲取新的訪問令牌。如果您的服務(wù)隨訪問令牌一起發(fā)出刷新令牌,則您需要實現(xiàn)此處描述的刷新授權(quán)類型。
請求參數(shù)
訪問令牌請求將包含以下參數(shù)。
grant_type(必需的)
該grant_type參數(shù)必須設(shè)置為“refresh_token”。
refresh_token(必需的)
先前頒發(fā)給客戶端的刷新令牌。
scope(選修的)
請求的范圍不得包括未在原始訪問令牌中發(fā)布的其他范圍。通常這不會包含在請求中,如果省略,服務(wù)應(yīng)該發(fā)出一個與之前發(fā)出的范圍相同的訪問令牌。
客戶端身份驗證(如果客戶端被授予機密則需要)
通常,刷新令牌僅用于機密客戶端。但是,由于可以在沒有客戶端密碼的情況下使用授權(quán)代碼流,因此沒有密碼的客戶端也可以使用刷新授權(quán)。如果向客戶端發(fā)出了一個秘密,則客戶端必須對該請求進行身份驗證。通常,該服務(wù)將允許附加請求參數(shù)client_id和client_secret,或者接受 HTTP 基本身份驗證標頭中的客戶端 ID 和密碼。如果客戶端沒有密碼,則此請求中不會出現(xiàn)客戶端身份驗證。
驗證刷新令牌授予
在檢查了所有必需的參數(shù)并驗證了客戶端(如果向客戶端發(fā)出了秘密)之后,授權(quán)服務(wù)器可以繼續(xù)驗證請求的其他部分。
然后服務(wù)器檢查刷新令牌是否有效,并且沒有過期。如果刷新令牌已頒發(fā)給機密客戶端,則服務(wù)必須確保請求中的刷新令牌已頒發(fā)給經(jīng)過身份驗證的客戶端。
如果一切正常,該服務(wù)可以生成訪問令牌并做出響應(yīng)。服務(wù)器可能會在響應(yīng)中發(fā)出新的刷新令牌,但如果響應(yīng)不包含新的刷新令牌,則客戶端會假定現(xiàn)有的刷新令牌仍然有效。
例子
以下是服務(wù)將接收的刷新授權(quán)示例。
POST /oauth/token HTTP/1.1 Host: authorization-server.com grant_type=refresh_token &refresh_token=xxxxxxxxxxx &client_id=xxxxxxxxxx &client_secret=xxxxxxxxxx

Response
對刷新令牌授予的響應(yīng)與發(fā)出訪問令牌時的響應(yīng)相同。您可以選擇在響應(yīng)中發(fā)出新的刷新令牌,或者如果您不包含新的刷新令牌,則客戶端假定當前的刷新令牌將繼續(xù)有效。
以上就是從0構(gòu)建Oauth2Server服務(wù)之Refreshing-access-tokens的詳細內(nèi)容,更多關(guān)于Oauth2Server服務(wù)構(gòu)建的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
SpringBoot實現(xiàn)application.yml文件敏感信息加密
本文主要介紹了SpringBoot實現(xiàn)application.yml文件敏感信息加密,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-07-07
基于Java的Socket多客戶端Client-Server聊天程序的實現(xiàn)
這篇文章主要介紹了基于Java的Socket多客戶端Client-Server聊天程序的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-03-03
spring boot使用sonarqube來檢查技術(shù)債務(wù)
今天小編就為大家分享一篇關(guān)于spring boot使用sonarqube來檢查技術(shù)債務(wù),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-12-12
JAVA利用順序表實現(xiàn)“楊輝三角”的思路及代碼示例
楊輝三角形是中國古代數(shù)學的杰出研究成果之一,是我國北宋數(shù)學家賈憲于1050年首先發(fā)現(xiàn)并使用的,這篇文章主要介紹了JAVA利用順序表實現(xiàn)楊輝三角的思路及代碼示例,需要的朋友可以參考下2025-01-01
兩個小例子輕松搞懂 java 中遞歸與尾遞歸的優(yōu)化操作
這篇文章主要介紹了兩個小例子輕松搞懂 java 中遞歸與尾遞歸的優(yōu)化操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09
springboot2版本無法加載靜態(tài)資源問題解決
這篇文章主要介紹了springboot2版本無法加載靜態(tài)資源問題解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-11-11
SpringCloud 服務(wù)網(wǎng)關(guān)路由規(guī)則的坑及解決
這篇文章主要介紹了SpringCloud 服務(wù)網(wǎng)關(guān)路由規(guī)則的坑及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07
解決eclipse中maven引用不到已經(jīng)存在maven中jar包的問題
這篇文章主要介紹了解決eclipse中maven引用不到已經(jīng)存在maven中jar包的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10

