因此,我最近使用 jwt 在服务器中建立了一个身份验证系统,一切正常,但是当我想进行登出路由时,我意识到了一些事情:
jwt 不能被取消验证,而是将我所做的操作与登录的用户ID一起存储在mongodb中,因此每次用户登录时,令牌都保存到数据库中,但使用不同集合中的> sha256 算法。
-我仅将其用于验证目的,因此,例如,当我们打到受保护的路由时,我们将检查我们拥有的当前令牌(来自标头或cookie)在数据库中是否有效,然后使用jwt.verify()
和其他验证步骤对它进行验证
基本上是将令牌列入白名单。
好处:
-每当我要注销用户时,我只需从数据库中删除该令牌
-或删除所有具有当前配置文件ID的令牌,如果我想注销该帐户的所有用户...
现在这是我的问题: