客戶端模式
客戶端模式(Client Credentials Grant)指客戶端以自己的名義拥娄,而不是以用戶的名義,向"服務(wù)提供商"進(jìn)行認(rèn)證瞳筏。
嚴(yán)格地說稚瘾,客戶端模式并不屬于OAuth框架所要解決的問題。在這種模式中姚炕,用戶直接向客戶端注冊(cè)摊欠,客戶端以自己的名義要求"服務(wù)提供商"提供服務(wù),其實(shí)不存在授權(quán)問題柱宦。
它的步驟如下:
(A)客戶端向認(rèn)證服務(wù)器進(jìn)行身份認(rèn)證些椒,并要求一個(gè)訪問令牌。
(B)認(rèn)證服務(wù)器確認(rèn)無誤后捷沸,向客戶端提供訪問令牌摊沉。
A步驟中,客戶端發(fā)出的HTTP請(qǐng)求痒给,包含以下參數(shù):
granttype:表示授權(quán)類型说墨,此處的值固定為"clientcredentials",必選項(xiàng)苍柏。
scope:表示權(quán)限范圍尼斧,可選項(xiàng)。
? ? POST /token HTTP/1.1
? ? Host: server.example.com
? ? Authorization: Basic czZCaGRSa3F0MzpnWDFmQmF0M2JW
? ? Content-Type: application/x-www-form-urlencoded
? ? grant_type=client_credentials
認(rèn)證服務(wù)器必須以某種方式试吁,驗(yàn)證客戶端身份棺棵。
B步驟中,認(rèn)證服務(wù)器向客戶端發(fā)送訪問令牌熄捍,下面是一個(gè)例子烛恤。
? ? HTTP/1.1 200 OK
? ? Content-Type: application/json;charset=UTF-8
? ? Cache-Control: no-store
? ? Pragma: no-cache
? ? {
? ? ? "access_token":"2YotnFZFEjr1zCsicMWpAA",
? ? ? "token_type":"example",
? ? ? "expires_in":3600,
? ? ? "example_parameter":"example_value"
? ? }
---------------------
本文來自 落筆映半海 的CSDN 博客 ,全文地址請(qǐng)點(diǎn)擊:https://blog.csdn.net/qq_36427770/article/details/68922558?utm_source=copy
Client模式???????????
?請(qǐng)求格式:POST? ?-D? "&client_id=appid&grant_type=client_credentials&client_secret=appkey"? http://localhost/OAuth/token????????????
服務(wù)器返回來的訪問令牌:?????????
???{? ????????"access_token":"4e56e9ec-2f8e-46b4-88b1-5d06847909ad"余耽,?
? ????????????"token_type": "bearer” 缚柏,
????????????? "refresh_token":"7e14c979-7039-49d0-9c5d-854efe7f5b38",
????????????? "expires_in": 36133 碟贾,
????????????? "scope": "read,write"?
???????????}
---------------------
本文來自 張勝楠 的CSDN 博客 币喧,全文地址請(qǐng)點(diǎn)擊:https://blog.csdn.net/tclzsn7456/article/details/79550249?utm_source=copy
<dependency>??
<groupId>org.apache.oltu.oauth2</groupId>??
<artifactId>org.apache.oltu.oauth2.client</artifactId>??
<version>0.31</version>??
</dependency>