一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

電腦之家 - 專業(yè)計算機基礎(chǔ)知識與電腦技術(shù)學(xué)習(xí)網(wǎng)站
分類導(dǎo)航

路由器|交換機|網(wǎng)絡(luò)協(xié)議|網(wǎng)絡(luò)知識|

服務(wù)器之家 - 電腦之家 - 網(wǎng)絡(luò)技術(shù) - 網(wǎng)絡(luò)協(xié)議 - OAuth2.0協(xié)議擴展——OIDC認證協(xié)議

OAuth2.0協(xié)議擴展——OIDC認證協(xié)議

2021-08-02 23:55碼農(nóng)小胖哥 網(wǎng)絡(luò)協(xié)議

客戶端無法認定資源擁有者就是正確的擁護者,雖然市面上的OAuth 2.0能夠保證授權(quán)的安全性,但是OAuth 2.0本身并沒有對用戶認證提供明確的規(guī)范。

OAuth2.0協(xié)議擴展——OIDC認證協(xié)議

前言

 

在上一文里我們通過一個例子回顧了OAuth 2.0的流程,同時指出了OAuth 2.0的局限性:客戶端無法認定資源擁有者就是正確的擁護者,雖然市面上的OAuth 2.0能夠保證授權(quán)的安全性,但是OAuth 2.0本身并沒有對用戶認證提供明確的規(guī)范。這就是OIDC產(chǎn)生的契機。

OIDC

 

OIDC是OAuth 2.0的一個變種。

OIDC(OpenID Connect)建立在Auth 2.0的流程之上,提出了終端用戶認證標識ID Token概念。符合OIDC流程的一定符合OAuth2.0。OAuth 2.0 是關(guān)于如何發(fā)布訪問令牌(AccessToken)的規(guī)范;而OIDC是關(guān)于如何發(fā)布ID 令牌的規(guī)范。雖然這兩種令牌都是以JWT的形式體現(xiàn)。

在RFC 6749中定義的一個OAuth2.0授權(quán)端點(authorization endpoint) 用以請求授權(quán),該端點需要一個response_type的參數(shù)用來通知授權(quán)服務(wù)器所需的授權(quán)類型,通常包括了code和token兩種。OIDC擴展了這一屬性,增加了id_token和none。那么response_type的值現(xiàn)在可能有下列組合的情況:

  1. code 
  2. token 
  3. id_token 
  4. code token 
  5. id_token token 
  6. code id_token 
  7. code id_token token 
  8. none 

另外如果該請求是一個OIDC授權(quán)認證請求還必須包含一個值為openid 的scope參數(shù),這是區(qū)分普通OAuth 2.0和OIDC的關(guān)鍵。

OIDC的關(guān)鍵術(shù)語

 

OIDC規(guī)定了一些術(shù)語用來提高我們學(xué)習(xí)的門檻:

  • EU:End User 終端用戶
  • RP:Relying Party 即客戶端(client),授權(quán)和認證的最終消費方,我搞不懂為啥要玩多余的概念
  • OP:OpenID Provider,對EU進行認證的服務(wù)提供者
  • ID Token:JWT格式,EU的認證通過后生成憑證,供RP消費
  • UserInfo Endpoint:通過憑據(jù)查詢用戶基本信息的接口,建議上HTTPS。

OIDC的流程

 

OIDC復(fù)用了OAuth2.0的授權(quán)流程,在授權(quán)的過程中增加了一些“小動作”來進行用戶認證。結(jié)合其術(shù)語,大致的流程是這樣的:

RP發(fā)送一個認證請求給OP;

OP先對EU進行身份認證,確認無誤后提供授權(quán);

OP把ID Token和Access Token(需要的話)返回給RP;

RP使用Access Token發(fā)送一個請求UserInfo EndPoint;(可選)

UserInfo EndPoint返回EU的Claims。(基于第4個步驟可選)

OAuth2.0協(xié)議擴展——OIDC認證協(xié)議

OIDC協(xié)議流程圖

另外,OIDC歸納了三種復(fù)用OAuth 2.0的流程:

  • Authorization Code Flow:使用OAuth2的Authorization Code模式來換取Id Token和Access Token。
  • Implicit Flow:使用OAuth2的Implicit模式獲取Id Token和Access Token。
  • Hybrid Flow:以上兩種的混合實現(xiàn)。

總結(jié)

 

協(xié)議這個東西學(xué)起來確實比較枯燥難懂,需要結(jié)合一些場景才能說清楚,說實話有些東西我也云里霧里,不過這個是無法跳過去的東西。先不要想太多為什么,后續(xù)會結(jié)合一些場景來搞明白上面的術(shù)語和流程。

原文鏈接:https://mp.weixin.qq.com/s/wPik1Tf2IwC08KkVFvd6Og

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 美国艳星lisann成人作品 | 国产一区在线播放 | 女bbbbxxxx视频 | 久久精品亚洲热综合一本 | www免费插插视频 | 久久一本岛在免费线观看2020 | 91国在线观看 | 久草草在线视视频 | 日本一区二区三区精品 | tube62hdxxxx日本 | 2020国产精品视频 | 国产亚洲精aa在线观看不卡 | bl文全肉高h湿被灌尿 | 明星梦淫| 关晓彤被调教出奶水 | 日韩在线视精品在亚洲 | 欧美另类杂交a | 日本黄色大片网站 | 午夜国产在线观看 | 娇喘嗯嗯 轻点啊视频福利 九九九九在线精品免费视频 | 色中文字幕 | 91嫩草国产在线观看免费 | 国产成人精品视频一区二区不卡 | 久久久精品3d动漫一区二区三区 | 四虎影院在线免费观看视频 | 果冻传媒九一制片厂 | 亚洲免费高清视频 | 国产欧美日韩一区二区三区在线 | 精品国产一二三区在线影院 | 国产剧情一区 | 国产一区在线播放 | 日本色淫| 91精品国产91热久久久久福利 | 嘿嘿午夜 | 国产第9页 | 亚洲欧美日韩另类精品一区二区三区 | 欧美久在线观看在线观看 | 日本色女 | 国产亚洲高清国产拍精品 | 国产一级毛片潘金莲的奶头 | 娇妻在床上迎合男人 |