OAuth2 0系列之基本概念和運作流程(一)

2022-07-05 11:24:20 字數 2096 閱讀 9934

目錄

二、oauth2.0原理

三、 oauth2.0的角色

四、oauth2.0授權模式

五、優質參考資料

oauth 2.0是目前最流行的授權機制,用來授權第三方應用

oauth 1.0協議(rfc5849)作為乙個指導性文件發布,是乙個小社群的工作成果。

本標準化規範在oauth 1.0的部署經驗之上構建,也包括其他使用案例以及從更廣泛的ietf社群收集到的可擴充套件性需求。

oauth 2.0協議不向後相容oauth 1.0。這兩個版本可以在網路上共存,實現者可以選擇同時支援他們。

oauth2.0是一種授權機制,正常情況,不使用oauth2.0等授權機制的系統,客戶端是可以直接訪問資源伺服器的資源的,為了使用者安全訪問資料,在訪問中間新增了access token機制。客戶端需要攜帶access token去訪問受到保護的資源。所以oauth2.0確保了資源不被惡意客戶端訪問,從而提高了系統的安全性。

引用官方介紹oauth2.0總體流程:

oauth2.0定義如下角色:

引用oauth2 rfc6749中文翻譯:

oauth2.0有4種授權模式:

其中最常用的是授權碼模式,4種授權模式的詳細介紹可以參考阮一峰老師的:oauth 2.0 的四種方式

授權碼(authorization code)方式,指的是第三方應用先申請乙個授權碼,然後再用該碼獲取令牌。

官網:

從調介面方面,簡單來說:

訪問:http://localhost:8084/api/userinfo?access_token=$

簡化模式(implicit grant type)不通過第三方應用程式的伺服器,直接在瀏覽器中向認證伺服器申請令牌,跳過了"授權碼"這個步驟,因此稱簡化模式

從調介面方面,簡單來說:

密碼模式中,使用者向客戶端提供自己的使用者名稱和密碼,這通常用在使用者對客戶端高度信任的情況

從調介面方面,簡單來說:

客戶端模式(client credentials)適用於沒有前端的命令列應用,即在命令列下請求令牌

從調介面方面,簡單來說:

學習必要的理論知識後,還是實踐一下才能明白整個流程,詳情參考我oauth2.0系列部落格專欄:oauth2.0系列部落格,springboot的參考我系列部落格專欄:springboot系列部落格

OAuth 2 0系列教程

作者 jakob jenkov譯者 林浩校對 郭蕾 oauth是openid的乙個補充,但是完全不同的服務。oauth 2.0 是目前比較流行的做法,它率先被google,yahoo,microsoft,facebook等使用。之所以標註為 2.0,是因為最初有乙個1.0協議,但這個1.0協議被弄得...

OAuth系列之簡單理解OAuth 2 0(二)

oauth 2.0 是目前最流行的授權機制,用來授權第三方應用,獲取使用者資料。例如 大型的居民小區 小區有門禁系統 進入的時候需要輸入密碼,那麼問題來了 有沒有一種辦法,讓快遞員能夠自由進入小區,又不必知道小區居民的密碼,而且他的唯一許可權就是送貨,其他需要密碼的場合,他都沒有許可權?於是,需要設...

OAuth 2 0 基本介紹

前言 最近討論園子裡是否真末落的話題那可是沸沸揚揚啊!我就不湊這個熱鬧了!在此吐點最近在整的東西出來給大家!廣大開發者和使用者登入平台後,就可以使用平台提供的開放api介面,建立應用從微博系統獲取資訊,或將新的資訊傳播到整個微博系統中,豐富多樣的api介面和應用,加上您的智慧型,將創造出無窮的應用和...