如果用户希望从其他机器注销帐户,JSON Web令牌(JWT)是否可以被拒绝或列入黑名单?

如果用户希望从其他机器注销帐户,JSON Web令牌(JWT)是否可以被拒绝或列入黑名单?,jwt,express-jwt,Jwt,Express Jwt,我正在构建一个需要身份验证的应用程序,我担心用户可能希望能够远程注销。有没有一种方法可以使用JSON Web令牌并将其列入黑名单或拒绝?我知道他们的好处是无状态,但是远程注销会更好 编辑:当Express.js使用Express jwt模块时,会出现一个错误。此外,还有一个模块。我仍然不明白这些策略是如何工作的,我想知道目前的最佳实践是什么。在Auth0上有一篇关于 他们给出了一个很好的真实示例,说明如何将JWTAPI密钥列入黑名单,使其不再有效。你应该读一读 提出问题 为将JWT列入黑名单提供

我正在构建一个需要身份验证的应用程序,我担心用户可能希望能够远程注销。有没有一种方法可以使用JSON Web令牌并将其列入黑名单或拒绝?我知道他们的好处是无状态,但是远程注销会更好


编辑:当Express.js使用Express jwt模块时,会出现一个错误。此外,还有一个模块。我仍然不明白这些策略是如何工作的,我想知道目前的最佳实践是什么。

在Auth0上有一篇关于 他们给出了一个很好的真实示例,说明如何将JWTAPI密钥列入黑名单,使其不再有效。你应该读一读

提出问题

为将JWT列入黑名单提供支持会带来以下问题:

  • 如何单独识别JWT
  • 谁应该能够撤销JWTs
  • 如何撤销代币
  • 我们如何避免增加开销
  • 这篇博文旨在通过利用我们的 在API v2中实现此功能的经验

    本文对每一点进行了分解,然后展示了一些关于如何实现这一点的示例代码,最后得出以下结论:

    上述大部分内容适用于将JWT列入黑名单 一般,不仅仅是JWTAPI键

    希望这篇博文能提供一些有用的想法,帮助你 解决这个问题

    我个人应用了类似的方法来撤销多个登录,其中令牌的使用与会话ID类似,并存储在cookie中。我将其建模为GitHub概要文件部分,用户可以在其中查看所有其他活动会话,并在需要时撤销它们(远程注销)

    就最佳实践而言,我认为这个话题应该是基于观点的。然而,我确实认为Auth0是这个topis领域的良好实践的来源,有很多人在这方面有经验

    更新:

    在npm上找到这个