同时在Node JS for Auth系统中使用JWT和会话[关闭]

问题描述 投票:1回答:1
阅读了许多关于JWT和Session的文章之后,我很确定我不应该在会话中使用JWT。

但是,是否有机会在同一应用程序中使用JWT和会话?如果是,如何,如果不是,那有什么替代方法?

我目前正在用nodeJS开发一个简单的身份验证系统,该系统可以在需要时登录和注销用户。我正在使用JWT存储有关用户的相关信息,这些信息以后可用于访问某些端点。

因此,在进行挖掘之后,我也了解了会话,因此,现在对于如何同时使用JWT和会话来完成任务感到困惑。我对所有这些东西都很陌生,因此,反馈和响应都受到赞赏]

编辑:经过数小时的挖掘,我对何时使用JWT和何时使用会话感到更加困惑。任何帮助表示赞赏。

编辑第2部分:在收到有关为什么关闭该问题的私人反馈之后,我对该问题进行了一些更改。

node.js api security session jwt
1个回答
0
投票
我认为,除非应用程序非常简单,否则JWT的实现通常应该与非cookie会话堆叠在一起。

一些随机场景:

假设以下内容;一个Web应用程序正在使用JWT进行身份验证,并且该应用程序使管理员能够将任何客户端标记为非活动客户端(已阻止),因此应防止该客户端登录。

现在问题在于通过JWT进行身份验证;我们不知道该特定客户端是否被阻止。

为了解决此问题,我已经看到一些开发人员在每个请求上查询数据库。其他开发人员撤消了JWT,并发布了一个标记为非活动的新标记,但是如果动态标记过多,该怎么办?同样很难打到数据库也不明智。

结论JWT +会话:

一种简单的解决方案是为每个有效的JWT授予内存中会话并将用户所需的数据存储在其中,对用户数据的任何更改都应反映在用户存储的会话中。所有传入的请求都将得到JWT验证以及会话验证。
© www.soinside.com 2019 - 2024. All rights reserved.