日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

SSO單點(diǎn)登錄和OAuth2.0的區(qū)別和理解

Android編程精選 ? 來源:CSDN ? 作者:CSDN ? 2022-11-07 11:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、概述

SSO是Single Sign On的縮寫,OAuth是Open Authority的縮寫,這兩者都是使用令牌的方式來代替用戶密碼訪問應(yīng)用。流程上來說他們非常相似,但概念上又十分不同。SSO大家應(yīng)該比較熟悉,它將登錄認(rèn)證和業(yè)務(wù)系統(tǒng)分離,使用獨(dú)立的登錄中心,實(shí)現(xiàn)了在登錄中心登錄后,所有相關(guān)的業(yè)務(wù)系統(tǒng)都能免登錄訪問資源。

OAuth2.0原理可能比較陌生,但平時用的卻很多,比如訪問某網(wǎng)站想留言又不想注冊時使用了微信授權(quán)。以上兩者,你在業(yè)務(wù)系統(tǒng)中都沒有賬號和密碼,賬號密碼是存放在登錄中心或微信服務(wù)器中的,這就是所謂的使用令牌代替賬號密碼訪問應(yīng)用。

二、SSO

兩者有很多相似之處,下面我們來解釋一下這個過程。先來講解SSO,通過SSO對比OAuth2.0,才比較好理解OAuth2.0的原理。SSO的實(shí)現(xiàn)有很多框架,比如CAS框架,以下是CAS框架的官方流程圖。特別注意:SSO是一種思想,而CAS只是實(shí)現(xiàn)這種思想的一種框架而已

f7809178-5dc7-11ed-a3b6-dac502259ad0.png

上面的流程大概為:

用戶輸入網(wǎng)址進(jìn)入業(yè)務(wù)系統(tǒng)Protected App,系統(tǒng)發(fā)現(xiàn)用戶未登錄,將用戶重定向到單點(diǎn)登錄系統(tǒng)CAS Server,并帶上自身地址service參數(shù)

用戶瀏覽器重定向到單點(diǎn)登錄系統(tǒng),系統(tǒng)檢查該用戶是否登錄,這是SSO(這里是CAS)系統(tǒng)的第一個接口,該接口如果用戶未登錄,則將用戶重定向到登錄界面,如果已登錄,則設(shè)置全局session,并重定向到業(yè)務(wù)系統(tǒng)

用戶填寫密碼后提交登錄,注意此時的登錄界面是SSO系統(tǒng)提供的,只有SSO系統(tǒng)保存了用戶的密碼,

SSO系統(tǒng)驗證密碼是否正確,若正確則重定向到業(yè)務(wù)系統(tǒng),并帶上SSO系統(tǒng)的簽發(fā)的ticket

瀏覽器重定向到業(yè)務(wù)系統(tǒng)的登錄接口,這個登錄接口是不需要密碼的,而是帶上SSO的ticket,業(yè)務(wù)系統(tǒng)拿著ticket請求SSO系統(tǒng),獲取用戶信息。并設(shè)置局部session,表示登錄成功返回給瀏覽器sessionId(tomcat中叫JSESSIONID)

之后所有的交互用sessionId與業(yè)務(wù)系統(tǒng)交互即可

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

三、OAuth2.0

OAuth2.0有多種模式,這里講的是OAuth2.0授權(quán)碼模式,OAuth2.0的流程跟SSO差不多,在OAuth2中,有授權(quán)服務(wù)器、資源服務(wù)器、客戶端這樣幾個角色,當(dāng)我們用它來實(shí)現(xiàn)SSO的時候是不需要資源服務(wù)器這個角色的,有授權(quán)服務(wù)器和客戶端就夠了。

授權(quán)服務(wù)器當(dāng)然是用來做認(rèn)證的,客戶端就是各個應(yīng)用系統(tǒng),我們只需要登錄成功后拿到用戶信息以及用戶所擁有的權(quán)限即可

用戶在某網(wǎng)站上點(diǎn)擊使用微信授權(quán),這里的某網(wǎng)站就類似業(yè)務(wù)系統(tǒng),微信授權(quán)服務(wù)器就類似單點(diǎn)登錄系統(tǒng)

之后微信授權(quán)服務(wù)器返回一個確認(rèn)授權(quán)頁面,類似登錄界面,這個頁面當(dāng)然是微信的而不是業(yè)務(wù)系統(tǒng)的

用戶確認(rèn)授權(quán),類似填寫了賬號和密碼,提交后微信鑒權(quán)并返回一個ticket,并重定向業(yè)務(wù)系統(tǒng)。

業(yè)務(wù)系統(tǒng)帶上ticket訪問微信服務(wù)器,微信服務(wù)器返回正式的token,業(yè)務(wù)系統(tǒng)就可以使用token獲取用戶信息了

簡介一下OAuth2.0的四種模式:

授權(quán)碼(authorization-code)

授權(quán)碼(authorization code)方式,指的是第三方應(yīng)用先申請一個授權(quán)碼,然后再用該碼獲取令牌。這種方式是最常用的流程,安全性也最高,它適用于那些有后端的 Web 應(yīng)用。授權(quán)碼通過前端傳送,令牌則是儲存在后端,而且所有與資源服務(wù)器的通信都在后端完成。這樣的前后端分離,可以避免令牌泄漏。

隱藏式(implicit)

有些 Web 應(yīng)用是純前端應(yīng)用,沒有后端。這時就不能用上面的方式了,必須將令牌儲存在前端。RFC 6749 就規(guī)定了第二種方式,允許直接向前端頒發(fā)令牌。這種方式?jīng)]有授權(quán)碼這個中間步驟,所以稱為(授權(quán)碼)“隱藏式”(implicit)

密碼式(password)

如果你高度信任某個應(yīng)用,RFC 6749 也允許用戶把用戶名和密碼,直接告訴該應(yīng)用。該應(yīng)用就使用你的密碼,申請令牌,這種方式稱為"密碼式"(password)。

客戶端憑證(client credentials)

最后一種方式是憑證式(client credentials),適用于沒有前端的命令行應(yīng)用,即在命令行下請求令牌。

簡單流程

f961ef00-5dc7-11ed-a3b6-dac502259ad0.png

四、說一下幾個名詞的區(qū)別

首先,SSO是一種思想,或者說是一種解決方案,是抽象的,我們要做的就是按照它的這種思想去實(shí)現(xiàn)它

其次,OAuth2是用來允許用戶授權(quán)第三方應(yīng)用訪問他在另一個服務(wù)器上的資源的一種協(xié)議,它不是用來做單點(diǎn)登錄的,但我們可以利用它來實(shí)現(xiàn)單點(diǎn)登錄。在本例實(shí)現(xiàn)SSO的過程中,受保護(hù)的資源就是用戶的信息(包括,用戶的基本信息,以及用戶所具有的權(quán)限),而我們想要訪問這這一資源就需要用戶登錄并授權(quán),OAuth2服務(wù)端負(fù)責(zé)令牌的發(fā)放等操作,這令牌的生成我們采用JWT,也就是說JWT是用來承載用戶的Access_Token的

最后,Spring Security、Shiro是用于安全訪問的,用來做訪問權(quán)限控制,都是一個用Java寫的框架

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    14

    文章

    10371

    瀏覽量

    91770
  • SSO
    SSO
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    7728

原文標(biāo)題:SSO 單點(diǎn)登錄和 OAuth2.0 的區(qū)別和理解

文章出處:【微信號:AndroidPush,微信公眾號:Android編程精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    ChatGPT突然無法登錄是什么情況?如何解決?

    很多人在使用 ChatGPT 時,都會遇到一個很頭疼的問題: 突然無法登錄 / 登錄失敗 / 一直轉(zhuǎn)圈 / 驗證不通過 ,尤其是做運(yùn)營、跨境電商和經(jīng)常需要使用AI工具的編程人員,這種問題一旦出現(xiàn),會
    的頭像 發(fā)表于 04-13 12:34 ?2499次閱讀
    ChatGPT突然無法<b class='flag-5'>登錄</b>是什么情況?如何解決?

    2026 淘寶 API 接口實(shí)用指南:從資質(zhì)申請到實(shí)戰(zhàn)避坑

    ? ?淘寶開放平臺(TOP)作為電商領(lǐng)域最成熟的 API 體系之一,2026 年圍繞 “安全合規(guī)” 與 “場景化能力” 進(jìn)行了多項更新 —— OAuth2.0 授權(quán)流程優(yōu)化、部分核心接口權(quán)限
    的頭像 發(fā)表于 04-07 16:32 ?270次閱讀

    京東平臺商品評論API接口技術(shù)指南

    ? 一、接口概述 通過京東開放平臺的商品評論API,開發(fā)者可獲取指定商品的用戶評價數(shù)據(jù)。該接口采用HTTPS協(xié)議,返回格式為JSON,需通過OAuth2.0認(rèn)證獲取訪問令牌。 二、核心參數(shù)說明 商品
    的頭像 發(fā)表于 03-20 17:19 ?829次閱讀
    京東平臺商品評論API接口技術(shù)指南

    如何自動登錄TestStand2.0

    啟動TestStand時彈出的登錄界面,除了上次介紹的修改Configure,還可以通過登錄管理員賬號進(jìn)行修改。
    的頭像 發(fā)表于 03-20 15:30 ?208次閱讀
    如何自動<b class='flag-5'>登錄</b>TestStand<b class='flag-5'>2.0</b>

    京東商品評論API接口技術(shù)實(shí)踐指南

    ? 一、接口認(rèn)證流程 獲取訪問令牌 調(diào)用OAuth2.0認(rèn)證接口獲取access_token: ? import requestsauth_url = "https://oauth
    的頭像 發(fā)表于 03-12 16:32 ?226次閱讀
    京東商品評論API接口技術(shù)實(shí)踐指南

    京東API助力:自動化庫存管理,降本增效!

    開發(fā)者權(quán)限 登錄京東開放平臺(open.jd.com),創(chuàng)建應(yīng)用并獲取關(guān)鍵憑證: app_key:應(yīng)用唯一標(biāo)識 app_secret:接口簽名密鑰 access_token:OAuth2.0授權(quán)令牌
    的頭像 發(fā)表于 12-23 15:46 ?353次閱讀
    京東API助力:自動化庫存管理,降本增效!

    12V應(yīng)用通用功率評估板設(shè)計:SSO8與TLE9879QXA40的完美結(jié)合

    12V應(yīng)用通用功率評估板設(shè)計:SSO8與TLE9879QXA40的完美結(jié)合 作為電子工程師,我們常常面臨著為特定應(yīng)用設(shè)計高效、可靠評估板的挑戰(zhàn)。今天,就來和大家分享一款專為12V應(yīng)用設(shè)計的通用
    的頭像 發(fā)表于 12-19 16:50 ?1063次閱讀

    EVAL_7116G_100V_SSO8評估板:助力功率電子系統(tǒng)設(shè)計

    EVAL_7116G_100V_SSO8評估板:助力功率電子系統(tǒng)設(shè)計 在功率電子系統(tǒng)的設(shè)計和開發(fā)過程中,評估板是工程師們驗證和測試關(guān)鍵組件性能的重要工具。今天,我們就來詳細(xì)探討一下Infineon
    的頭像 發(fā)表于 12-19 11:35 ?689次閱讀

    路由器TACACS+賬號登錄時經(jīng)常報用戶密碼錯誤的問題分析

    某地M6000-S開啟TACACS+賬號登錄認(rèn)證后,發(fā)現(xiàn)設(shè)備登錄經(jīng)常會上報用戶密碼錯誤,過一段時間才恢復(fù)正常。
    的頭像 發(fā)表于 11-14 09:55 ?549次閱讀
    路由器TACACS+賬號<b class='flag-5'>登錄</b>時經(jīng)常報用戶密碼錯誤的問題分析

    qi2.2和qi2.0區(qū)別

    Qi2.0與Qi2.2在功率、兼容性和場景應(yīng)用上各有突破,Qi2.2提升功率至25W,支持跨品牌兼容,推動無線充電技術(shù)發(fā)展。
    的頭像 發(fā)表于 10-26 08:15 ?2151次閱讀
    qi2.2和qi<b class='flag-5'>2.0</b>的<b class='flag-5'>區(qū)別</b>

    PCB設(shè)計中單點(diǎn)接地與多點(diǎn)接地的區(qū)別與設(shè)計要點(diǎn)

    常見的接地策略,分別適用于不同的場景。下面為您解析兩者的核心區(qū)別及設(shè)計要點(diǎn),幫助您更好地理解如何選擇適合的接地方案。 PCB設(shè)計單點(diǎn)接地與多點(diǎn)接地區(qū)別與設(shè)計要點(diǎn) 一、
    的頭像 發(fā)表于 10-10 09:10 ?2794次閱讀
    PCB設(shè)計中<b class='flag-5'>單點(diǎn)</b>接地與多點(diǎn)接地的<b class='flag-5'>區(qū)別</b>與設(shè)計要點(diǎn)

    阿里巴巴開放平臺關(guān)鍵字搜索商品接口實(shí)戰(zhàn)詳解:OAuth2.0 認(rèn)證落地 + 檢索效率優(yōu)化(附避坑代碼)

    在 B2B 電商數(shù)據(jù)對接中,阿里巴巴開放平臺的關(guān)鍵字搜索商品接口(alibaba.aliindex.search)是獲取批發(fā)商品、供應(yīng)商數(shù)據(jù)的核心通道。但多數(shù)開發(fā)者會卡在OAuth2.0 認(rèn)證斷連
    的頭像 發(fā)表于 09-16 16:26 ?1119次閱讀

    如何自動登錄TestStand

    啟動TestStand時彈出的登錄界面,在日常使用中并無大礙,但當(dāng)項目需要通過LabVIEW調(diào)用TestStand序列文件時,這個環(huán)節(jié)就會破壞程序運(yùn)行的流暢性。
    的頭像 發(fā)表于 08-28 10:43 ?1375次閱讀
    如何自動<b class='flag-5'>登錄</b>TestStand

    ROHS檢測儀的1.0與2.0區(qū)別 國產(chǎn)檢測設(shè)備品牌新機(jī)會

    ”。企業(yè)在選擇檢測設(shè)備時,必須清晰地認(rèn)識到1.0與2.0區(qū)別,并著眼于未來法規(guī)的持續(xù)收緊,選擇能夠滿足當(dāng)前及未來檢測需求的先進(jìn)設(shè)備。
    的頭像 發(fā)表于 08-22 08:32 ?1492次閱讀
    ROHS檢測儀的1.0與<b class='flag-5'>2.0</b><b class='flag-5'>區(qū)別</b> 國產(chǎn)檢測設(shè)備品牌新機(jī)會

    單點(diǎn)失效保護(hù)的15W電源管理方案

    芯片單點(diǎn)失效保護(hù)是一種關(guān)鍵的安全設(shè)計機(jī)制,旨在確保當(dāng)芯片的某一組件發(fā)生故障時,系統(tǒng)不會完全崩潰或引發(fā)連鎖性失效,而是進(jìn)入預(yù)設(shè)的安全狀態(tài)。今天推薦的15W電源管理方案,主控芯片就自帶單點(diǎn)失效保護(hù)功能。接下來,一起走進(jìn)U6218C+U7712電源方案組合!
    的頭像 發(fā)表于 07-08 13:44 ?1076次閱讀
    帶<b class='flag-5'>單點(diǎn)</b>失效保護(hù)的15W電源管理方案
    沙雅县| 涪陵区| 恩平市| 佛教| 尼木县| 呼伦贝尔市| 射阳县| 徐汇区| 屏东县| 盈江县| 济阳县| 皋兰县| 新田县| 财经| 蚌埠市| 丹寨县| 齐齐哈尔市| 连平县| 文山县| 健康| 绥滨县| 沙洋县| 名山县| 苍溪县| 筠连县| 聂拉木县| 前郭尔| 阿坝| 阿拉尔市| 定结县| 龙里县| 灵宝市| 抚远县| 连南| 来宾市| 义乌市| 平南县| 鸡西市| 衡南县| 左贡县| 鄂尔多斯市|