獲取 access_token 的方式
- 授權碼模式(Authorization Code):先用賬號密碼登錄獲取 code ;然後使用 code 獲取 access_token ;
- 簡化模式(也叫隱式授權)(Implicit): 使用賬號密碼直接在瀏覽器通過重定向獲取 access_token ;
- 密碼模式(Resource Owner Password Credentials): Client 直接使用賬號密碼獲取 access_token ;
- 客戶端模式(Client Credentials): 直接生成 access_token ;一般用於機器之間;
access_token 是頒發給人還是機器
- 頒發給人,跟用戶關聯: 授權碼模式、密碼模式、簡化模式;
- 頒發給機器,跟用戶無關: 客戶端模式;
是否有 refresh_token
- 有 refresh_token : 授權碼模式、密碼模式 ;
- 無 refresh_token : 簡化模式、客戶端模式;
給第三方還是自己使用
- 給第三方: 授權碼模式 ;
- 給自己: 密碼模式、簡化模式、客戶端模式;
如何選擇
簡單畫個流程圖來:
閱讀更多 三木益達 的文章