不同域名cookie共享_cookie在二级域名间共享完成sso
生活随笔
收集整理的這篇文章主要介紹了
不同域名cookie共享_cookie在二级域名间共享完成sso
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
單點登錄(SingleSignOn,SSO)就是用戶完成一次應用系統登錄,便可以免登訪問多個其它應用系統,這里所說的應用系統是相互信任的。
通常SSO都是企業內部多個應用之間,一個企業一般有一個頂級域名,應用系統使用二級域名來區分,只要實現了cookie在二級域名之間共享,那就實現了一次登錄,到處免登。
比如頂級域名為 .star.com,現有app1.star.com,app2.star.com,兩個應用都有自己(登錄鑒權等)攔截操作,攔截這部分在代碼形態上是可以單獨剝離出來的。
此時可以單獨部署一個用來登錄鑒權的cas.star.com,未登錄攔截時跳轉cas.star.com發起登錄,也可以直接由應用自己發起登錄操作,這里就以應用自己發起登錄操作。
只需解決兩個問題:
1.在app1或app2登錄完成后,寫入瀏覽器cookie,域名設置為star.com,這樣二級域名下的應用都可以共享這個cookie。
2.cookie關聯的session要寫入公共中間件,通常使用redis保存,以便session可以在多個應用間共享。
畫個圖比較清晰一些,這就是同域下共享cookie的方案,但是不同域之間cookie是無法共享的,所以有了cas的解決方案,算是本方案的一個升級,本質上還是如何實現session共享的問題。
總結
以上是生活随笔為你收集整理的不同域名cookie共享_cookie在二级域名间共享完成sso的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python装饰器功能是冒泡排序怎么做_
- 下一篇: python多线程多进程多协程_pyth