我正在研究存储刷新 token 一段时间,但是我对找到的信息不满意。我想知道您如何存储刷新 token ?
有些人习惯将它们存储在数据库中,或者像 Redis 这样的缓存中,但我认为由于 JWT 的性质,它应该是无状态的。但我找不到任何其他解决方案,我不想将其存储在设备存储上,因为它可能会导致严重的安全漏洞。您能分享一下您的想法吗?
谢谢您的回答
最佳答案
我想这取决于您想要完成的任务或 token 的创建方式。我发现数据库
是存储刷新 token
的好地方。为什么?因为 token 更像是密码,并且存储在数据库中更容易保持其与用户的关系。此外,无论用户使用什么设备,您始终可以从数据库访问 token 。对于其他方法,当缓存或 cookie 被清除时,您很容易丢失 token 。如果将它们存储到设备,用户可能会切换设备。但是,您可以将从刷新 token 创建的过期 token
存储到设备/本地存储、cookie 或其他位置。仅在创建新的过期 token 时才访问数据库以获取刷新 token 。
关于javascript - 如何存储刷新 token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55111733/