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

談?wù)勀銓?duì)OAuth的理解,這道題你會(huì)了嗎?

開(kāi)發(fā) 架構(gòu)
OAuth 2.0 是 OAuth 的最新版本。OAuth 的首版于 2010 年發(fā)布。OAuth 2.0 于 2012 年發(fā)布,修復(fù)了 OAuth 1.0 中存在的若干漏洞。目前,大家基本上都只會(huì)使用OAuth2.0了。

 1位工作5年的小伙伴被問(wèn)到這樣一道面試題,說(shuō)談?wù)勀銓?duì)OAuth的理解。當(dāng)時(shí),這位小伙伴感覺(jué)回答得不是很理想,希望我拍一期視頻詳細(xì)地介紹一下。

今天,我給大家講一講,我對(duì)這個(gè)問(wèn)題的理解。

1、什么是 OAuth

OAuth是一個(gè)關(guān)于授權(quán)(Authorization)的開(kāi)放技術(shù)標(biāo)準(zhǔn),在全世界得到廣泛應(yīng)用,它本質(zhì)上是一種協(xié)議,可以在不共享用戶用戶名和密碼的前提下,實(shí)現(xiàn)將授權(quán)從應(yīng)用程序另一個(gè)應(yīng)用程序。如圖所示:

圖片

咱們可以使用QQ或者微信直接登錄京東APP,而無(wú)需在京東重新注冊(cè)用戶。相當(dāng)于,用戶可以在一個(gè)平臺(tái)上登錄,獲得授權(quán)后,也可在另一平臺(tái)上執(zhí)行操作和查看數(shù)據(jù)。使用最為廣泛的場(chǎng)景是SSO(單點(diǎn)登錄)。

圖片

舉個(gè)例子,有一位訪客需要在房主不在家時(shí)進(jìn)到房間里面,房主又不能把門鎖密碼告訴訪客,而是給預(yù)先發(fā)給訪客一張臨時(shí)房卡,這張房卡刷一次就失效了。OAuth 的工作方式和這個(gè)場(chǎng)景非常類似,一個(gè)應(yīng)用程序向另一個(gè)應(yīng)用發(fā)送授權(quán)令牌來(lái)授予用戶訪問(wèn)權(quán)限,而不是發(fā)送用戶的密碼。

2、OAuth的工作原理

我們知道,任何的身份認(rèn)證,本質(zhì)上都是基于對(duì)請(qǐng)求方的不信任產(chǎn)生的。而OAuth的出現(xiàn),主要是解決多個(gè)應(yīng)用之間的授權(quán)信任問(wèn)題。在OAuth的交互過(guò)程中有四個(gè)參與角色,如圖所示:

圖片

它們分別是:

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

一般情況下,資源服務(wù)器和認(rèn)證服務(wù)器是同一個(gè)服務(wù),這樣更方便調(diào)用。OAuth的工作原理如圖所示:

圖片

第1步:客戶端向資源擁有者發(fā)送授權(quán)請(qǐng)求,一般資源擁有者的資源會(huì)存放在資源服務(wù)器。

第2步:客戶端會(huì)收到資源服務(wù)器的授權(quán)許可。

第3步:客戶端拿到許可之后,再向授權(quán)服務(wù)器發(fā)送一次驗(yàn)證,給客戶端頒發(fā)一個(gè)Access Token訪問(wèn)令牌。

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

第5步:資源服務(wù)器會(huì)將獲取到的令牌傳給認(rèn)證服務(wù)器驗(yàn)證令牌的有效性。

第6步:資源服務(wù)器驗(yàn)證令牌通過(guò)之后,就會(huì)返回一個(gè)受保護(hù)的資源。

在我們看到的這個(gè)流程中,最重要的是第2步,也就是在第3步獲取授權(quán)之前,客戶端要先申請(qǐng)?jiān)S可資源的內(nèi)容,比如用戶頭像,用戶昵稱等等。也就是客戶端向資源服務(wù)器申請(qǐng)授權(quán)的時(shí)候,需要填寫以下授權(quán)所需的信息,分別是:應(yīng)用名稱、應(yīng)用網(wǎng)站、重定向URI或者回調(diào)的URL(redirect_uri)、客戶端標(biāo)識(shí)client_id和客戶端密鑰client_secret。這些信息需要我們?cè)?。

當(dāng)然,OAuth一共設(shè)計(jì)了四種授權(quán)模式,分別是:

授權(quán)碼模式(Authorization Code Grant)。

圖片

簡(jiǎn)化模式(Implicit Grant)。

圖片

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

圖片

客戶端模式(Client Credentials Grant)。

圖片

由于視頻時(shí)長(zhǎng)的限制,我這里就不詳細(xì)介紹了。有興趣的小伙伴可以在評(píng)論區(qū)回復(fù)666,我可以單獨(dú)再拍攝一期視頻專門講解。

3、關(guān)于OAuth 2.0

圖片

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

好了,以上就是我對(duì)OAuth的理解。

責(zé)任編輯:姜華 來(lái)源: Tom彈架構(gòu)
相關(guān)推薦

2023-11-28 12:25:02

多線程安全

2022-06-30 09:10:33

NoSQLHBaseRedis

2024-02-02 09:00:14

內(nèi)存泄漏對(duì)象

2022-09-19 07:57:59

云服務(wù)互聯(lián)網(wǎng)基礎(chǔ)設(shè)施

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

網(wǎng)絡(luò)IOLinux

2024-06-18 08:22:51

ActivityUI線程

2022-07-08 09:27:48

CSSIFC模型

2023-11-07 08:19:35

IO多路復(fù)用磁盤、

2022-11-08 08:45:30

Prettier代碼格式化工具

2024-02-02 11:03:11

React數(shù)據(jù)Ref

2024-01-19 08:25:38

死鎖Java通信

2022-04-01 08:23:17

InputstreString字符串

2024-02-04 00:00:00

Effect數(shù)據(jù)組件

2023-07-26 13:11:21

ChatGPT平臺(tái)工具

2023-01-10 08:43:15

定義DDD架構(gòu)

2023-03-30 07:55:02

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 久久久入口 | 日本免费黄色一级片 | 国产成人久久久 | 亚洲综合婷婷 | 亚洲国产精品久久久 | 91网站视频在线观看 | 国产精品美女久久久久久久网站 | 国产精品乱码一区二三区小蝌蚪 | 欧美日韩国产一区 | a在线视频 | 中文字幕免费在线 | 成人午夜在线 | 人人干在线 | 国产一级黄色网 | xxxxx黄色片 欧美一区免费 | 婷婷色在线 | 亚洲精品一区二区 | 久久大陆 | 永久看片| 成人综合在线视频 | 天天插天天操 | 99久久精品免费 | 国产精品国产三级国产aⅴ入口 | 国产粉嫩尤物极品99综合精品 | 在线免费观看黄色 | 在线日韩 | 99视频免费在线 | 国产日韩欧美精品一区二区 | 精品国产一级片 | 国产视频一区在线 | 91精品国产一区二区三区动漫 | 亚洲免费网 | 国产精品视频网址 | 国产精品视频一二三区 | 97精品超碰一区二区三区 | 超碰最新在线 | 国产日屁| 在线观看国产 | 3级毛片 | 国产一区视频在线 | 成人欧美一区二区三区 |