最近公司產品上線,通宵加班了一個月,一直沒有更新,今天開始恢復,每日一更,沖沖沖
任務13:詳解oauth2授權碼流程
我們即將開發的產品有一個用戶 API,一個項目服務 API,每個服務都需要認證授權,所以我們需要一個登錄系統,用戶(Android,IOS)通過登錄系統獲取 token,再使用 token 訪問 API
在這個體系下都是自己的系統,可以輸入用戶名和密碼,當用戶在其他的平台,需要訪問我們的 API,比如開發平台 open-api.mingson.cn,其他平台的用戶不可能直接調用這個 API,必須得到授權才可以訪問
如果訪問的是網站,比如用戶中心和人才中心,兩個模塊都需要跳轉登錄,我們會通過密碼的方式訪問登錄系統,點擊同意之后跳轉
授權碼模式步驟:
(A)用戶訪問客戶端,后者將前者導向認證服務器。
(B)用戶選擇是否給予客戶端授權。
(C)假設用戶給予授權,認證服務器將用戶導向客戶端事先指定的"重定向URI"(redirection URI),同時附上一個授權碼。
(D)客戶端收到授權碼,附上早先的"重定向URI",向認證服務器申請令牌。這一步是在客戶端的后台的服務器上完成的,對用戶不可見。
(E)認證服務器核對了授權碼和重定向URI,確認無誤后,向客戶端發送訪問令牌(access token)和更新令牌(refresh token)。
參考資料
理解OAuth 2.0:
https://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html
課程鏈接
http://video.jessetalk.cn/course/explore
本作品采用知識共享署名-非商業性使用-相同方式共享 4.0 國際許可協議進行許可。
歡迎轉載、使用、重新發布,但務必保留文章署名 鄭子銘 (包含鏈接: http://www.cnblogs.com/MingsonZheng/ ),不得用於商業目的,基於本文修改后的作品務必以相同的許可發布。
如有任何疑問,請與我聯系 (MingsonZheng@outlook.com) 。