oauth2實(shí)現(xiàn)單點(diǎn)登錄 OAuth和傳統(tǒng)的SSO有什么區(qū)別?
OAuth和傳統(tǒng)的SSO有什么區(qū)別?OAuth和SSO的區(qū)別在于OAuth是一個(gè)授權(quán)協(xié)議,它只為用戶資源的授權(quán)提供了一個(gè)安全、開(kāi)放和簡(jiǎn)單的標(biāo)準(zhǔn)。OAuth 2.0為客戶端開(kāi)發(fā)人員開(kāi)發(fā)web應(yīng)用程序、桌
OAuth和傳統(tǒng)的SSO有什么區(qū)別?
OAuth和SSO的區(qū)別在于OAuth是一個(gè)授權(quán)協(xié)議,它只為用戶資源的授權(quán)提供了一個(gè)安全、開(kāi)放和簡(jiǎn)單的標(biāo)準(zhǔn)。
OAuth 2.0為客戶端開(kāi)發(fā)人員開(kāi)發(fā)web應(yīng)用程序、桌面應(yīng)用程序、移動(dòng)應(yīng)用程序和客廳設(shè)備提供了特定的授權(quán)流程。用戶提交的帳戶密碼不會(huì)提交到本地,而是提交到授權(quán)服務(wù)器。服務(wù)器確認(rèn)后,向應(yīng)用返回一個(gè)訪問(wèn)令牌,應(yīng)用可以使用該訪問(wèn)令牌訪問(wèn)資源服務(wù)器的資源。因?yàn)橛脩舻膸裘艽a不直接與此應(yīng)用程序交互,而是與官方服務(wù)器交互,所以是安全的。
oauth2.0的解決方案是通過(guò)令牌獲得系統(tǒng)的操作權(quán)限。由于ClientID的標(biāo)識(shí),一次性登錄只能在系統(tǒng)上生效。第三方應(yīng)用的操作用戶不是認(rèn)證系統(tǒng)的正式用戶,授權(quán)機(jī)構(gòu)認(rèn)證中心可以進(jìn)行限制。
SSO在多個(gè)應(yīng)用系統(tǒng)中,用戶只需登錄一次即可訪問(wèn)所有相互信任的應(yīng)用系統(tǒng)。用戶登錄到身份驗(yàn)證服務(wù)器一次后,就可以登錄并訪問(wèn)任何應(yīng)用程序中的多個(gè)系統(tǒng)。操作用戶是應(yīng)用程序的正式用戶。用戶的權(quán)限和域取決于身份驗(yàn)證服務(wù)器的存儲(chǔ)。它通常處理公司不同應(yīng)用程序之間的訪問(wèn)和登錄問(wèn)題。例如,企業(yè)應(yīng)用程序有許多業(yè)務(wù)子系統(tǒng)。只需登錄一個(gè)系統(tǒng),就可以實(shí)現(xiàn)不同子系統(tǒng)之間的跳轉(zhuǎn),避免登錄操作。
一般來(lái)說(shuō),OAuth是一個(gè)簡(jiǎn)單的授權(quán)方案,用于解決不同公司的不同產(chǎn)品的登陸問(wèn)題。通常,這些授權(quán)服務(wù)是由主要客戶網(wǎng)站提供的,如QQ、新浪微博、人人網(wǎng)等,使用這些服務(wù)的客戶可能是大客戶網(wǎng)站,也可能是小客戶網(wǎng)站。使用OAuth授權(quán)的優(yōu)點(diǎn)是,它可以減少或避免用戶在為用戶提供某些服務(wù)時(shí),由于用戶在注冊(cè)時(shí)的懶惰而造成的用戶損失。
OAuth和SSO的應(yīng)用場(chǎng)景不同。盡管可以使用OAuth實(shí)現(xiàn)sso,但不建議這樣做。但是,如果將SSO和OAuth結(jié)合起來(lái),理論上可以解決各個(gè)公司不同應(yīng)用之間的登錄問(wèn)題,但現(xiàn)實(shí)往往是殘酷的。
oauth2與jwt的區(qū)別?
Oauth2有客戶機(jī)和范圍的概念,但JWT沒(méi)有。如果它只用于頒發(fā)令牌,則兩者之間沒(méi)有區(qū)別。常用的熊算法OAuth,JWT都可以用。應(yīng)用場(chǎng)景不同