【问题标题】:Where to store JWT revocation information, mongoDB or Redis?JWT 吊销信息在哪里存储,mongoDB 还是 Redis?
【发布时间】:2017-10-21 08:48:03
【问题描述】:

目前使用 JWT 而非会话来实现 MEAN 堆栈用户注册/登录系统,以进行所有身份验证。

为了能够撤销 JWT,我需要将一些 JWT 信息存储为令牌黑名单的一部分。我最初的想法是使用 MongoDB 来存储列入黑名单的令牌,但 Redis 也适合吗?在这种情况下我不愿避免使用 Redis 的原因是,如果服务器崩溃/重新启动,那么令牌黑名单将会丢失,而对于 MongoDB,黑名单将保持不变/持久。

任何建议将不胜感激。谢谢。

【问题讨论】:

    标签: node.js mongodb redis jwt


    【解决方案1】:

    Redis 支持多种基于磁盘的持久性模式。您可以使用 save 配置指令启用 snapshop 持久性 (RDB),也可以使用 appendonly yes 配置指令启用变更日志持久性 (AOF)。

    对于您的用例,您可能应该使用 AOF 持久性。

    更多关于 Redis 持久化的信息可以在https://redis.io/topics/persistence找到。

    【讨论】:

    • 谢谢。我不知道 Redis 可以坚持下去。将通读手册。出于兴趣,您是否说使用启用 AOF 的 Redis 而不是简单的 Mongo 解决方案有什么优势?我认为数据访问速度将取决于数据集的大小,因此 Redis 更适合较小的数据集,因为它存在于内存中。
    猜你喜欢
    • 1970-01-01
    • 2013-10-04
    • 1970-01-01
    • 2019-04-01
    • 2015-09-01
    • 2014-11-14
    • 2011-10-26
    • 2012-10-05
    • 2017-03-19
    相关资源
    最近更新 更多