一、什么是單點登錄
單點登錄(Single Sign On),簡稱為 SSO,是目前比較流行的企業業務整合的解決方案之一。SSO的定義是在多個應用系統中,用戶只需要登錄一次就可以訪問所有相互信任的應用系統。
二、原理
1.用戶第一次訪問系統A,系統A校驗用戶是沒有登錄的,然后頁面跳轉到認證系統統一登錄頁面,用戶輸入賬號和密碼,認證通過,認證中心生成一個憑證token,此時的token在各個系統均可以使用,須注意token是有一定的有效時間的.
2.認證中心跳轉到系統A的頁面,同時攜帶token,用戶在訪問資源的時候,系統A會進行token的校驗,此時token是有效的,系統A返回資源.
3.用戶訪問系統B,此時token是共享的,系統B校驗用戶是登錄的,然后返回資源.
4.在長時間沒有訪問任何一個系統,此時的token是過期的,用戶再次訪問A系統,系統A校驗token已經過期,用戶登錄狀態已經失效,再次跳轉認證中心頁面去認證.
5.用戶在系統A點擊退出,系統A內部調用認證中心系統的退出,清除會話token,此時用戶去訪問系統B,系統B校驗用戶的狀態是沒有登錄.這就實現了登錄一次所有系統都可以訪問,在任一系統退出,所有系統都退出.