OAuth2.0 工作流程
生活随笔
收集整理的這篇文章主要介紹了
OAuth2.0 工作流程
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
重要術語 ? Authorization Server:授權服務器,能夠成功驗證資源擁有者和獲取授權,并在此之后分發令牌的服務器; Resource Server:資源服務器,存儲用戶的數據資源,能夠接受和響應受保護資源請求的服務器; Client:客戶端,獲取授權和發送受保護資源請求的第三方應用; Resource Owner:資源擁有者,能夠對受保護資源進行訪問許可控制的實體; Protected Resource:受保護資源,能夠使用OAuth請求獲取的訪問限制性資源; Authorization Code:授權碼; Refresh Token:刷新令牌; Access Token:訪問令牌。 核心工作流程
OAuth 為客戶端提供了一種代表資源擁有者訪問受保護資源的方法。在客戶端訪問受保護資源之前,它必須先從資源擁有者獲取授權(訪問許可),然后用訪問許可交換訪問令牌(Access Token,包含許可的作用域、持續時間和其它屬性等信息)。客戶端通過向資源服務器出示訪問令牌來訪問受保護資源。訪問令牌提供了一個抽象層,將不同的授權結構(如用戶名密碼)替換成資源服務器可以理解的單一訪問令牌。這種抽象使得分發短期有效的訪問令牌成為可能,也使得資源服務器不必理解多種多樣的授權機制。使用OAuth2.0 機制,進行認證授權,獲取訪問令牌,并通過訪問令牌來訪問受保護資源,如圖所示: OAuth2.0 的工作流程簡述如下:
(1) 客戶端從資源擁有者(最終用戶)那里請
求授權。授權請求能夠直接發送給資源擁有者,或者
間接的通過授權服務器發送請求;
(2) 資源擁有者為客戶端授權,給客戶端發送一個
訪問許可(Authorization Code);
(3) 客戶端出示自己的私有證書(client_id 和
client_secret)和上一步拿到的訪問許可,來向授權服務
器請求一個訪問令牌;
(4) 授權服務器驗證客戶端的私有證書和訪問許
可的有效性,如果驗證有效,則向客戶端發送一個訪
問令牌,訪問令牌包括許可的作用域、有效時間和一
些其他屬性信息;
(5) 客戶端出示訪問令牌向資源服務器請求
受保護資源;
(6) 資源服務器對訪問令牌做出響應。
OAuth 為客戶端提供了一種代表資源擁有者訪問受保護資源的方法。在客戶端訪問受保護資源之前,它必須先從資源擁有者獲取授權(訪問許可),然后用訪問許可交換訪問令牌(Access Token,包含許可的作用域、持續時間和其它屬性等信息)。客戶端通過向資源服務器出示訪問令牌來訪問受保護資源。訪問令牌提供了一個抽象層,將不同的授權結構(如用戶名密碼)替換成資源服務器可以理解的單一訪問令牌。這種抽象使得分發短期有效的訪問令牌成為可能,也使得資源服務器不必理解多種多樣的授權機制。使用OAuth2.0 機制,進行認證授權,獲取訪問令牌,并通過訪問令牌來訪問受保護資源,如圖所示: OAuth2.0 的工作流程簡述如下:
(1) 客戶端從資源擁有者(最終用戶)那里請
求授權。授權請求能夠直接發送給資源擁有者,或者
間接的通過授權服務器發送請求;
(2) 資源擁有者為客戶端授權,給客戶端發送一個
訪問許可(Authorization Code);
(3) 客戶端出示自己的私有證書(client_id 和
client_secret)和上一步拿到的訪問許可,來向授權服務
器請求一個訪問令牌;
(4) 授權服務器驗證客戶端的私有證書和訪問許
可的有效性,如果驗證有效,則向客戶端發送一個訪
問令牌,訪問令牌包括許可的作用域、有效時間和一
些其他屬性信息;
(5) 客戶端出示訪問令牌向資源服務器請求
受保護資源;
(6) 資源服務器對訪問令牌做出響應。
轉載于:https://www.cnblogs.com/cuihongwei1988/p/5333369.html
總結
以上是生活随笔為你收集整理的OAuth2.0 工作流程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 添加或者更新字段说明
- 下一篇: 《世界是数字的》读后感