一分鐘了解單點登錄
什么是單點登錄?
單點登錄(SSO,Single Sign On),是在企業內部多個應用系統(如考勤系統、財務系統、人事系統等)場景下,用戶只需要登錄一次,就可以訪問多個應用系統。同理用戶只需注銷一次,就可以從多個應用系統退出登錄。簡單來說就是,一次登錄,全部登錄!一次注銷,全部注銷?。?/span>
實現的原理
單點登錄的實現原理說明如下:
1. 用戶首次訪問系統A時,需要進行登錄。
2. 系統A帶著用戶登錄信息重定向給認證系統。
3. 認證系統驗證用戶登錄信息。
4. 驗證通過后,返回一個token,token類似一種內部的通行證,包含了用戶身份信息、登錄狀態和過期時間,在各個系統間共享。
5. 認證系統帶著token重定向給系統A,得知用戶是已登錄狀態。
6. 系統A向用戶返回請求的資源。
7. 用戶訪問系統B時,需要進行登錄。
8. 系統B通過共享的token,得知用戶是已登錄狀態。
9. 系統B向用戶返回請求的資源。
Token是有時效性的,如果用戶長時間沒有操作,token將會過期。
Token過期后用戶再次訪問系統A、系統B時,登錄狀態已失效,需要重新登錄。
對于注銷場景,與上述流程類似。
用戶主動從系統A注銷時,系統A調用認證系統,清除token。
此時用戶再訪問系統A、系統B時,通過共享的token得知用戶是已注銷狀態,需要重新登錄。
總結
單點登錄通過在用戶和系統之間引入認證系統。
以往用戶需要分別對接各個應用系統進行登錄/注銷,現在用戶只需要單獨對接認證系統進行登錄/注銷。
登錄狀態在各個應用系統間共享,體現了把簡單留給用戶,把復雜留給后臺系統的設計理念。極大節省了用戶時間,提高了用戶體驗。