第三方登入 OAuth2 0協議

2022-08-17 10:09:21 字數 852 閱讀 7897

oauth的工作原理如下:

step1:獲取request token

step2:獲取access token

step3:後續api訪問

step4:refresh token重新整理access token

舉個例子:

接下來,詳細解釋其中關鍵環節。

在使用者登入成功以後,跳轉到目標**指定的url(**位址)。在跳轉過程中,url還會加上乙個引數,我們命名為code吧。code這個引數是加密過的字串。在使用者本機請求帶有code引數的**位址時,**位址對應的服務端會接收code引數。當接收到code引數以後,按理說已經可以確保使用者登入成功了。但在這裡還有乙個安全隱患:萬一code被中間人截獲,中間人冒充目標**使用qq的oauth伺服器提供的各種許可權,那就出事了。因此,還需要乙個步驟來避免這種情況。我們要保證code引數被合法的目標**獲取到。

另外,還有一點要注意:code的存在時間很短,目標**伺服器必須在很短的時間內完成整個互動過程。為什麼要這樣設計?如果有中間人截獲了code,他就必須在很短的時間內對code進行破解,而且還要去偽造乙個url。然而加密演算法可不是鬧著玩的,code能讓你這麼簡單就破解了?所以,這個做法進一步確保了這個過程的安全性。code是乙個生命週期很短,並且只能使用一次的加密字串。

以上就是第三方登入的基本互動過程,還有乙個access token(使用者通過目標**訪問oauth介面的令牌)沒有提及,為了方便理解,就不加在上述過程了,因為其作用主要在於讓已被oauth伺服器授權的目標**可以使用其它oauth伺服器提供的服務,比如:把自己喜歡的**分享到qq空間。

第三方登入 OAuth2 0協議

oauth的工作原理如下 step1 獲取request token step2 獲取access token step3 後續api訪問 step4 refresh token重新整理access token 舉個例子 接下來,詳細解釋其中關鍵環節。在使用者登入成功以後,跳轉到目標 指定的url ...

php第三方登入 Oauth2 0協議

oauth 允許使用者提供乙個令牌,而不是使用者名稱和密碼來訪問他們存放在特定服務提供者的資料。每乙個令牌授權乙個特定的 例如,oauth協議簡介 步驟1 請求oauth登入頁 request token url 未授權的令牌請求服務位址 請求qq登入頁面時使用的帶有 特定引數的url client...

PHP第三方登入OAuth2 0協議

什麼是oauth?oauth協議為使用者資源的授權提供了乙個安全的開放而又簡易的標準。與以往的授權方式不同之處是oauth的授權不會使第三方觸及到使用者的賬戶資訊,即第三方無需使用使用者的使用者名稱和密碼就可以申請獲得該使用者資源的授權,因此他是安全的。oauth應用場景 qq使用者授權慕課網使用其...