在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java/ 使用jwt設(shè)置過期時間的問題

使用jwt設(shè)置過期時間的問題

1.當用戶登錄成功后,簽發(fā)了一個token,設(shè)置了過期時間,假設(shè)為2個小時;

2.當用戶距離到期時間大于30分鐘的時候,用戶攜帶原token訪問接口,此時不簽發(fā)新token,原token依然有效;

3.當用戶距離到期時間小于30分鐘,但是并沒有過期,用戶攜帶原token訪問接口,這個時候簽發(fā)新token,原token失效;

4.當用戶token已經(jīng)過期,直接簽發(fā)新token。

這里給用戶留了半小時的無操作判斷,和以前的session有些相似。我想問的是這樣還有什么弊端嗎?

回答
編輯回答
孤客

用jwt就說明授權(quán)無法撤銷, 但是可以通過在token中過期時間來取消授權(quán);
第3點中,你是無法讓原token失效的, 因為你不知道這個token是否簽發(fā)過新token,如果用數(shù)據(jù)庫存儲就另說了.(這也違背了jwt設(shè)計吧?);
第4點,過期的token,不能直接簽發(fā)新token,必須要正確的授權(quán)再簽發(fā),(這里可能是你的筆誤,表達重新授權(quán)簽發(fā)之意?)

session存server, jwt token存client, jwt無法主動撤銷授權(quán).
要說弊端,就是第三點的多授權(quán)token問題? 好像也不是什么大問題...

2018年4月19日 16:20