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