Redis 鍵

最後更新

本頁列出套件在 Redis 寫入的每個鍵、TTL 與寫入時機,方便監控與除錯。

鍵一覽

鍵 值 TTL
refresh:<refresh_id> RefreshData JSON refreshTokenExpires
revoke:<access_token> "1" accessTokenExpires

寫入時機

操作 鍵 TTL
CreateJWT() refresh:<id>,version: 1 refreshTokenExpires
續期(未換發) refresh:<id>,version + 1 重設為 refreshTokenExpires
續期(換發) 舊 refresh:<id> 5 秒
續期(換發) 新 refresh:<id>,version: 0 refreshTokenExpires
RevokeJWT() refresh:<id> 5 秒
RevokeJWT() revoke:<access_token> accessTokenExpires

除錯指令

# 列出所有工作階段
redis-cli --scan --pattern 'refresh:*'

# 查看某個 Refresh ID 的內容與剩餘秒數
redis-cli GET 'refresh:<refresh_id>'
redis-cli TTL 'refresh:<refresh_id>'

# 強制讓某個工作階段失效
redis-cli DEL 'refresh:<refresh_id>'

刪除 refresh:<id> 後,該工作階段在 Access Token 過期後無法續期;未過期的 Access Token 仍可通過驗證,直到過期為止。

容量

revoke: 鍵以完整 Access Token 為名,每筆約為 Token 長度(數百位元組);登出量大時以 accessTokenExpires 控制保存時間。

相關:Refresh Token 輪替、Token 撤銷

EN