jwt防止重復(fù)登錄 jwt如何防止多端登錄?
jwt如何防止多端登錄?阻止多終端登錄?為什么我們要通過JWT??JWT只存儲用戶的基本信息。JWT的目的是減少數(shù)據(jù)庫搜索并提高響應(yīng)時間。如果要阻止多終端登錄,只需檢查JWT是否成功,然后執(zhí)行redi
jwt如何防止多端登錄?
阻止多終端登錄?為什么我們要通過JWT??
JWT只存儲用戶的基本信息。JWT的目的是減少數(shù)據(jù)庫搜索并提高響應(yīng)時間。
如果要阻止多終端登錄,只需檢查JWT是否成功,然后執(zhí)行redis檢查。
Redis群集。效率很高。Redis有一個稱為bitmap的數(shù)據(jù)結(jié)構(gòu)。命令是setbit key offset 1,這意味著將對應(yīng)于鍵的二進制向量的偏移位設(shè)置為1。
例如,鍵對應(yīng)的二進制是:000000,偏移對應(yīng)的位置是第二個設(shè)置為1。是010000。
密鑰表示唯一密鑰,偏移量表示用戶ID。如果登錄成功,相應(yīng)位置將設(shè)置為1,注銷將設(shè)置為0。此命令設(shè)置為1時只能成功一次
setbit islogin ID001 1 user 1登錄成功
setbit islogin ID001 0 user 1注銷
setbit islogin ID002 1 user 2登錄成功
setbit islogin ID002 0 user 2脫機
隨著科技的發(fā)展和分布式web的普及應(yīng)用程序中,通過會話管理用戶登錄狀態(tài)的成本越來越高。因此,它逐漸發(fā)展成為一種令牌方式來進行登錄身份驗證,然后利用令牌獲取緩存在redis中的用戶信息。隨著JWT的出現(xiàn),驗證方法更加簡單方便,不需要通過redis緩存,而是直接根據(jù)令牌檢索保存的用戶信息,驗證令牌的可用性。單點登錄更容易。
JWT通常包含兩個令牌:訪問令牌和刷新令牌。當(dāng)用戶通過登錄等方式成功驗證身份時,服務(wù)器會生成一個訪問令牌和一個刷新令牌,并返回前端存儲。兩個令牌的過期時間都將在服務(wù)器上設(shè)置,但訪問令牌的過期時間較短,而刷新令牌的過期時間較長。當(dāng)當(dāng)前端向服務(wù)器發(fā)送請求時,訪問令牌將與請求一起發(fā)送到服務(wù)器,以驗證請求者的身份。當(dāng)服務(wù)器發(fā)現(xiàn)訪問令牌已過期時,它將返回失敗信息。此時,前端需要使用refresh token從服務(wù)器申請新的訪問令牌。如果刷新令牌沒有問題,服務(wù)器將生成一個新的訪問令牌。如果刷新令牌已過期,則需要要求用戶再次登錄以驗證其身份。
總之,JWT擴展是通過使用過期時間較長的刷新令牌重新申請新的訪問令牌來實現(xiàn)的。當(dāng)刷新令牌也已過期時,不可能延長時間。
Jwt的token如何像session一樣去延長時間?
1. 我們打開我們的華為手機,以確保我們已登錄華為帳戶。找到桌面“設(shè)置”選項進入。
2. 輸入設(shè)置后,點擊頂部華為賬號名稱,進入華為賬號中心
3。在“帳戶中心”頁面上,向下滑動。選擇“設(shè)備管理”選項并輸入。
4. 在設(shè)備管理選項中,您可以看到您的華為帳戶的所有設(shè)備名稱和登錄時間。
5. 選擇要管理的設(shè)備的名稱,單擊要輸入的設(shè)備,然后選擇下面的“重命名”來重命名設(shè)備。
6. 您也可以選擇下面的“刪除并退出”。然后驗證我們的華為帳戶密碼。驗證完成后,點擊“確認”按鈕,從華為設(shè)備中刪除該賬號。
華為登錄設(shè)備管理?
您可以在國王榮耀助手應(yīng)用程序上查看。
直接打開king glory應(yīng)用程序,選擇chat;
然后找到助理秘書;
點擊查看登錄時間、登錄位置、登錄設(shè)備、游戲分區(qū)等具體登錄記錄。