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

阿里終面:說說OAuth2.0 與 單點登錄的區別?

開發 前端
Oauth2.0和單點登錄的區別需要理解清楚,相對來說Oauth2.0實現單點登錄更加簡單,CAS雖然能夠實現單點登錄,但是服務部署和配置更加復雜,不易于上手,當然目前也有很多的系統在使用CAS,在選擇的時候開發者根據這些區別和復雜程度去決策。

SSO是Single Sign On的縮寫,OAuth是Open Authority的縮寫,這兩者都是使用令牌的方式來代替用戶密碼訪問應用。流程上來說他們非常相似,但概念上又十分不同。很多人會將其混為一談,其實這兩個還是有些區別的。

對于OAuth2.0相關內容在Spring Cloud Alibaba 實戰中結合實戰項目源碼從零搭建有著詳細的介紹,如下圖:

圖片

?什么是單點登錄

簡單的說就是在多個應用的系統中,用戶只需要登錄一次就可以訪問權限范圍內的所有應用子系統,同樣的注銷也只需要注銷一次。

比如百度這個網站,用戶只要登錄了百度的官網,那么對于百度百科、百度知道、百度貼吧等網站都是處于登錄狀態,這就是一個典型的單點登錄的例子。

單點登錄和Oauth2.0的區別

雖然Oauth2.0能夠實現單點登錄,但是在一些方面還是有些區別的,如下:

  • 信任角度:Oauth2.0授權服務端和第三方客戶端不屬于一個互相信任的應用群,比如微信和第三方,這就不是一個公司的產品;然而單點登錄的服務端和接入的客戶端都在同一個相互信任的應用系統中,比如百度官網、百度百科,這都是一個公司的產品
  • 資源角度:OAuth2.0授權主要是讓用戶自行決定——“我”在OAuth2.0服務提供方的個人資源是否允許第三方應用訪問;而單點登錄的資源都在客戶端這邊,單點登錄的服務端主要用于登錄,以及管理用戶在各個子系統的權限信息。
  • 流程角度:OAuth2.0授權的時候,第三方客戶端需要拿預先“商量”好的密碼去獲取Access Token;而單點登錄則不需要。

Oauth2.0完全可以實現單點登錄,但是更加側重于對于己方資源的保護,了解了這兩種的區別才能正確的選擇

單點登錄的實現

Oauth2.0實現單點登錄非常簡單,比如微服務下的各個子系統接入Oauth2.0的認證服務,用戶從認證服務獲取token后,直接通過網關轉發給下游子系統則可以實現只需要一次登錄

其實除了Oauth2.0以外,還有很多框架能夠實現單點登錄,比較經典則是CAS框架

以下是CAS框架的官方流程圖。特別注意:SSO是一種思想,而CAS只是實現這種思想的一種框架而已

圖片

上面的流程大概為:

  • 用戶輸入網址進入業務系統Protected App,系統發現用戶未登錄,將用戶重定向到單點登錄系統CAS Server,并帶上自身地址service參數。
  • 用戶瀏覽器重定向到單點登錄系統,系統檢查該用戶是否登錄,這是SSO(這里是CAS)系統的第一個接口,該接口如果用戶未登錄,則將用戶重定向到登錄界面,如果已登錄,則設置全局session,并重定向到業務系統。
  • 用戶填寫密碼后提交登錄,注意此時的登錄界面是SSO系統提供的,只有SSO系統保存了用戶的密碼
  • SSO系統驗證密碼是否正確,若正確則重定向到業務系統,并帶上SSO系統的簽發的ticket。
  • 瀏覽器重定向到業務系統的登錄接口,這個登錄接口是不需要密碼的,而是帶上SSO的ticket,業務系統拿著ticket請求SSO系統,獲取用戶信息。并設置局部session,表示登錄成功返回給瀏覽器sessionId(tomcat中叫JSESSIONID)。
  • 之后所有的交互用sessionId與業務系統交互即可。

整個流程還是相對比較復雜的,當然CAS這個框架的配置也是相對比較復雜,了解過的人都想放棄,關于CAS如何去搭建,在后面會單獨介紹。

最常見的例子是,我們打開淘寶APP,首頁就會有天貓、聚劃算等服務的鏈接,當你點擊以后就直接跳過去了,并沒有讓你再登錄一次。

圖片

總結

Oauth2.0和單點登錄的區別需要理解清楚,相對來說Oauth2.0實現單點登錄更加簡單,CAS雖然能夠實現單點登錄,但是服務部署和配置更加復雜,不易于上手,當然目前也有很多的系統在使用CAS,在選擇的時候開發者根據這些區別和復雜程度去決策。

責任編輯:武曉燕 來源: 碼猿技術專欄
相關推薦

2025-04-11 05:55:00

2021-08-02 06:49:46

OIDC認證協議

2015-03-21 06:41:50

oauth2.0監控寶

2022-03-16 00:07:55

OAuth2授權框架

2021-11-19 06:50:17

OAuth協議授權

2024-12-06 07:00:00

2021-03-24 09:23:45

代碼阿里應用分層

2020-12-04 06:35:20

TCPUDP阿里

2024-03-20 10:53:15

2023-08-29 08:00:38

2024-09-11 08:37:39

2024-03-01 11:33:31

2025-01-14 10:28:34

業務主表讀寫冷熱分離

2022-01-24 08:19:19

業務CRUD場景

2024-10-14 16:49:06

2022-09-09 10:15:06

OAuthJava

2021-07-12 07:08:53

OAuth 2.0授權協議

2025-05-12 01:55:00

MySQL存儲數據

2021-07-19 09:27:42

SSD內存Linux

2021-03-16 16:35:39

網關Java代碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日日碰狠狠躁久久躁婷婷 | 四虎伊人 | 久久人爽爽人爽爽 | 操视频网站 | 亚洲精品一区中文字幕乱码 | 欧美日韩在线视频一区 | 午夜精品久久久久久 | 91 中文字幕 | 国产伦精品一区二区三毛 | 天天操夜夜拍 | av手机免费在线观看 | 久久久久久久国产精品影院 | 日本天堂视频在线观看 | 亚洲成人精 | 欧美中文字幕一区二区三区亚洲 | 亚洲国产欧美一区二区三区久久 | 亚洲精品乱码 | 色综合色综合 | 国产视频91在线 | 欧美一区二区在线看 | 波多野结衣一二三区 | 国产精品日韩欧美一区二区三区 | 久久免费精品 | 国产成人高清视频 | 99久久婷婷国产综合精品 | 精品免费观看 | 国产精品a一区二区三区网址 | 91精品在线播放 | 亚洲精品99 | 欧美久操网 | 日韩一区二区av | 午夜视频在线播放 | 久久99视频精品 | 日韩视频福利 | 成人av一区 | 一级做a爰片性色毛片16 | 欧美日韩一区二区三区四区五区 | 日本午夜视频 | 91亚洲精品在线 | 亚洲国产欧美国产综合一区 | 天天宗合网|