成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

談談你對OAuth的理解,這道題你會了嗎?

開發 架構
OAuth 2.0 是 OAuth 的最新版本。OAuth 的首版于 2010 年發布。OAuth 2.0 于 2012 年發布,修復了 OAuth 1.0 中存在的若干漏洞。目前,大家基本上都只會使用OAuth2.0了。

 1位工作5年的小伙伴被問到這樣一道面試題,說談談你對OAuth的理解。當時,這位小伙伴感覺回答得不是很理想,希望我拍一期視頻詳細地介紹一下。

今天,我給大家講一講,我對這個問題的理解。

1、什么是 OAuth

OAuth是一個關于授權(Authorization)的開放技術標準,在全世界得到廣泛應用,它本質上是一種協議,可以在不共享用戶用戶名和密碼的前提下,實現將授權從應用程序另一個應用程序。如圖所示:

圖片

咱們可以使用QQ或者微信直接登錄京東APP,而無需在京東重新注冊用戶。相當于,用戶可以在一個平臺上登錄,獲得授權后,也可在另一平臺上執行操作和查看數據。使用最為廣泛的場景是SSO(單點登錄)。

圖片

舉個例子,有一位訪客需要在房主不在家時進到房間里面,房主又不能把門鎖密碼告訴訪客,而是給預先發給訪客一張臨時房卡,這張房卡刷一次就失效了。OAuth 的工作方式和這個場景非常類似,一個應用程序向另一個應用發送授權令牌來授予用戶訪問權限,而不是發送用戶的密碼。

2、OAuth的工作原理

我們知道,任何的身份認證,本質上都是基于對請求方的不信任產生的。而OAuth的出現,主要是解決多個應用之間的授權信任問題。在OAuth的交互過程中有四個參與角色,如圖所示:

圖片

它們分別是:

  1. 資源所有者(Resource Owner):一般是指咱們自己。
  2. 客戶端(Client):一般是指需要授權的應用,比如京東APP。
  3. 資源服務器(Resource Server):一般是指保存信息的服務器,比如QQ密碼和微信密碼的服務器。
  4. 授權服務器(Authorization Server):一般是指提API的服務器,比如QQ的Open API服務,微信的Open API服務。

一般情況下,資源服務器和認證服務器是同一個服務,這樣更方便調用。OAuth的工作原理如圖所示:

圖片

第1步:客戶端向資源擁有者發送授權請求,一般資源擁有者的資源會存放在資源服務器。

第2步:客戶端會收到資源服務器的授權許可。

第3步:客戶端拿到許可之后,再向授權服務器發送一次驗證,給客戶端頒發一個Access Token訪問令牌。

第4步:客戶端拿到令牌之后,交給資源服務器。

第5步:資源服務器會將獲取到的令牌傳給認證服務器驗證令牌的有效性。

第6步:資源服務器驗證令牌通過之后,就會返回一個受保護的資源。

在我們看到的這個流程中,最重要的是第2步,也就是在第3步獲取授權之前,客戶端要先申請許可資源的內容,比如用戶頭像,用戶昵稱等等。也就是客戶端向資源服務器申請授權的時候,需要填寫以下授權所需的信息,分別是:應用名稱、應用網站、重定向URI或者回調的URL(redirect_uri)、客戶端標識client_id和客戶端密鑰client_secret。這些信息需要我們在 。

當然,OAuth一共設計了四種授權模式,分別是:

授權碼模式(Authorization Code Grant)。

圖片

簡化模式(Implicit Grant)。

圖片

密碼模式(Resource Owner Password Credentials Grant)。

圖片

客戶端模式(Client Credentials Grant)。

圖片

由于視頻時長的限制,我這里就不詳細介紹了。有興趣的小伙伴可以在評論區回復666,我可以單獨再拍攝一期視頻專門講解。

3、關于OAuth 2.0

圖片

OAuth 2.0 是 OAuth 的最新版本。OAuth 的首版于 2010 年發布。OAuth 2.0 于 2012 年發布,修復了 OAuth 1.0 中存在的若干漏洞。目前,大家基本上都只會使用OAuth2.0了。

好了,以上就是我對OAuth的理解。

責任編輯:姜華 來源: Tom彈架構
相關推薦

2023-11-28 12:25:02

多線程安全

2022-06-30 09:10:33

NoSQLHBaseRedis

2024-02-02 09:00:14

內存泄漏對象

2022-09-19 07:57:59

云服務互聯網基礎設施

2024-09-20 05:46:00

2024-09-11 16:49:55

2022-08-14 07:14:50

Kafka零拷貝

2022-10-09 15:18:31

SwaggerOpenAPI工具

2019-12-26 09:15:44

網絡IOLinux

2024-06-18 08:22:51

ActivityUI線程

2022-07-08 09:27:48

CSSIFC模型

2022-11-08 08:45:30

Prettier代碼格式化工具

2024-01-19 08:25:38

死鎖Java通信

2022-04-01 08:23:17

InputstreString字符串

2024-02-04 00:00:00

Effect數據組件

2023-07-26 13:11:21

ChatGPT平臺工具

2023-01-10 08:43:15

定義DDD架構

2023-11-07 08:19:35

IO多路復用磁盤、

2024-02-02 11:03:11

React數據Ref

2023-03-30 07:55:02

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产在线小视频 | 91久久久久久久久久久 | 亚洲国产成人精品久久 | 精品一区二区三区在线观看 | 久久久国产精品网站 | 国产区高清 | 精品一区二区三区中文字幕 | 日韩一区二区三区在线观看视频 | 中文字幕第90页 | 亚洲最大av网站 | 久日精品| 午夜精品一区二区三区免费视频 | 精品一区二区三区在线观看 | 一区二区三区精品在线 | 6996成人影院网在线播放 | 精品久久99 | 精精国产xxxx视频在线播放 | 美女国产一区 | 视频一区中文字幕 | 国产精品久久久久久久久免费樱桃 | 久久久久久久久久久久久9999 | 成人在线精品视频 | 久久久国产一区二区三区四区小说 | 91精品国产乱码久久蜜臀 | 午夜网 | 精品久久国产 | 爱综合 | 成人午夜网 | av中文字幕网站 | 久草视频2 | 97中文视频| xxxxx免费视频| 7799精品视频天天看 | 国产精品美女久久久久久免费 | 亚洲精品久久区二区三区蜜桃臀 | 日韩久久久久久久 | 亚洲福利免费 | 成人精品鲁一区一区二区 | 免费黄视频网站 | 色婷婷激情综合 | 天天操天天拍 |