真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

OAuth2.0的四種授權方式是什么

這篇文章主要講解了“OAuth2.0的四種授權方式是什么”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“OAuth2.0的四種授權方式是什么”吧!

成都創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供哈密網(wǎng)站建設、哈密做網(wǎng)站、哈密網(wǎng)站設計、哈密網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、哈密企業(yè)網(wǎng)站模板建站服務,十載哈密做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。

一、OAuth3.0 為何物二、OAuth3.0 授權方式

OAuth3.0四種授權中授權碼方式是最為復雜,但也是安全系數(shù)最高的,比較常用的一種方式。這種方式適用于兼具前后端的Web項目,因為有些項目只有后端或只有前端,并不適用授權碼模式。

下圖我們以用WX登錄掘金為例,詳細看一下授權碼方式的整體流程。

OAuth2.0的四種授權方式是什么

用戶選擇WX登錄掘金,掘金會向WX發(fā)起授權請求,接下來 WX詢問用戶是否同意授權(常見的彈窗授權)。response_typecode 要求返回授權碼,scope 參數(shù)表示本次授權范圍為只讀權限,redirect_uri 重定向地址。

https://wx.com/oauth/authorize?
  response_type=code&
  client_id=CLIENT_ID&
  redirect_uri=http://juejin.im/callback&
  scope=read

用戶同意授權后,WX 根據(jù) redirect_uri重定向并帶上授權碼。

http://juejin.im/callback?code=AUTHORIZATION_CODE

當掘金拿到授權碼(code)時,帶授權碼和密匙等參數(shù)向WX申請令牌。grant_type表示本次授權為授權碼方式 authorization_code ,獲取令牌要帶上客戶端密匙 client_secret,和上一步得到的授權碼 code。

https://wx.com/oauth/token?
 client_id=CLIENT_ID&
 client_secret=CLIENT_SECRET&
 grant_type=authorization_code&
 code=AUTHORIZATION_CODE&
 redirect_uri=http://juejin.im/callback

最后 WX 收到請求后向 redirect_uri 地址發(fā)送 JSON 數(shù)據(jù),其中的access_token 就是令牌。

 {    
  "access_token":"ACCESS_TOKEN",
  "token_type":"bearer",
  "expires_in":2592000,
  "refresh_token":"REFRESH_TOKEN",
  "scope":"read",
  ......
}

2、隱藏式

上邊提到有一些Web應用是沒有后端的, 屬于純前端應用,無法用上邊的授權碼模式。令牌的申請與存儲都需要在前端完成,跳過了授權碼這一步。

前端應用直接獲取 token,response_type 設置為 token,要求直接返回令牌,跳過授權碼,WX授權通過后重定向到指定 redirect_uri 。

https://wx.com/oauth/authorize?
  response_type=token&
  client_id=CLIENT_ID&
  redirect_uri=http://juejin.im/callback&
  scope=read

3、密碼式

密碼模式比較好理解,用戶在掘金直接輸入自己的WX用戶名和密碼,掘金拿著信息直接去WX申請令牌,請求響應的 JSON結(jié)果中返回 tokengrant_typepassword 表示密碼式授權。

https://wx.com/token?
  grant_type=password&
  username=USERNAME&
  password=PASSWORD&
  client_id=CLIENT_ID

這種授權方式缺點是顯而易見的,非常的危險,如果采取此方式授權,該應用一定是可以高度信任的。

4、憑證式

憑證式和密碼式很相似,主要適用于那些沒有前端的命令行應用,可以用最簡單的方式獲取令牌,在請求響應的 JSON 結(jié)果中返回 token。

grant_typeclient_credentials 表示憑證式授權,client_idclient_secret 用來識別身份。

https://wx.com/token?
  grant_type=client_credentials&
  client_id=CLIENT_ID&
  client_secret=CLIENT_SECRET

三、令牌的使用與更新1、令牌怎么用?

拿到令牌可以調(diào)用 WX API 請求數(shù)據(jù)了,那令牌該怎么用呢?

每個到達WX的請求都必須帶上 token,將 token 放在 http 請求頭部的一個Authorization字段里。

如果使用postman 模擬請求,要在Authorization -> Bearer Token 放入 token,注意:低版本postman 沒有這個選項。

OAuth2.0的四種授權方式是什么

2、令牌過期怎么辦?

token是有時效性的,一旦過期就需要重新獲取,但是重走一遍授權流程,不僅麻煩而且用戶體驗也不好,那如何讓更新令牌變得優(yōu)雅一點呢?

一般在頒發(fā)令牌時會一次發(fā)兩個令牌,一個令牌用來請求API,另一個負責更新令牌 refresh_token。grant_typerefresh_token 請求為更新令牌,參數(shù) refresh_token 是用于更新令牌的令牌。

https://wx.com/oauth/token?
  grant_type=refresh_token&
  client_id=CLIENT_ID&
  client_secret=CLIENT_SECRET&
  refresh_token=REFRESH_TOKEN

感謝各位的閱讀,以上就是“OAuth2.0的四種授權方式是什么”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對OAuth2.0的四種授權方式是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關知識點的文章,歡迎關注!


分享文章:OAuth2.0的四種授權方式是什么
鏈接地址:http://weahome.cn/article/jsepdg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部