單點登陸

我們正當年發表於2020-12-07

解決多個伺服器登陸問題:

1、nginx使用iphash策略

2、單點登陸

實現單點登陸的方式

使用redis/mysql/

登陸資訊資料生成一個UUID儲存到cookie中,類似於伺服器儲存session

使用token令牌

1、使用者登陸,驗證成功,生成一個token,返回給瀏覽器使用者;使用者瀏覽器帶著這個token再去訪問伺服器的時候,根據伺服器裡面的key去解析token,解析到使用者資訊;
2、當負載均衡訪問到其他伺服器時,因為是提供的相同的服務,所以這些伺服器裡面的key都是相同的,所以當使用者訪問其他伺服器,一樣可以解析到token裡面的使用者資訊;
3、擴充套件:微博使用微信登陸實現原理,微博請求微信,將登陸資訊傳送給微信,微信驗證成功之後,生成token,並將token資訊返回給微博;當客戶再請求微博時,微博會將token資訊再次請求微信,使微信解析token並返回微博使用者資訊;

在這裡插入圖片描述在這裡插入圖片描述

使用者登陸過程

1、使用者輸入使用者名稱、密碼登陸,通過安全框架去驗證,驗證成功返回一個token
2、將使用者資訊,通過token的value作為key存入資料庫快取表中
3、將token儲存再瀏覽器中
4、使用者之後訪問頁面,通過key去解析token,解析出的token值,再通過token的value去快取表中查出使用者資訊

相關文章