架構師速成6.15-開發框架-單點登陸

單點登陸應該歸爲架構的部分了,但是通常站點在開始的時候最好有單點登陸的思想。防止後期再作大量的改動。api

而且單點登陸對於開發者來講並無添加太多額外的工做量,因此提早講一下對你們都是好的。架構

先說一下單點登陸的機制(摘自百度百科,給我廣告費):google

當用戶第一次訪問應用系統1的時候。因爲尚未登陸。會被引導到認證系統中進行登陸。依據用戶提供的登陸信息,認證系統進行身份校驗,假設經過校驗,應該返回給用戶一個認證的憑據--ticket;用戶再訪問別的應用的時候,就會將這個ticket帶上。做爲本身認證的憑據,應用系統接受到請求以後會把ticket送到認證系統進行校驗。檢查ticket的合法性。spa

假設經過校驗,用戶就可以在不用再次登陸的狀況下訪問應用系統2和應用系統3了。ci

另外單點登陸的優勢是不需要每開發一個系統都需要作一套用戶管理的功能了。你僅僅需要開發一套用戶管理系統,提供sso的sdk,甚至可以再擴展一下提供oauth2的api,這樣就可以實現內部的單點登陸及外部的用戶認證。開發

詳細實現機制我就再也不巴拉巴拉的拷貝粘貼了,請自行google sso單點登陸。oauth2。class

我再說一下咱們血的教訓,最先作站點時根本沒有使用單點登陸,因爲就一個系統,而且也沒有想過這個問題。後來系統就漸漸多了起來,每個裏面都有一套用戶註冊、登陸、管理。登錄

但是這幾個系統終因而服務同一批用戶的,問題就來了。用戶不想每個系統都註冊、登陸一次啊,而且每個系統的用戶都沒有關係。領導對此大發雷霆,僅僅得每個系統進行改造,數據合併最頭大,有些用戶註冊的username還不同。僅僅得多個帳號都保留。固然改造完以後,神清氣爽,爲後來和新浪教育及其它教育公司對接提供了有力的支持。百度

相關文章
相關標籤/搜索