PassportJS JWT与会话

时间:2017-03-20 11:48:51

标签: angularjs node.js angular passport.js

序言/ TL; DR

我有一个使用PassportJS JWT strategy的愚蠢API,我想添加会话,以便在某些区域进行用户隔离,这是一些增强功能的要求。

整个系统由MySQL DB,NodeJS + ExpressJS(带PassportJS)后端和Angular 2前端组成。

更多信息

我在应用程序中实现会话时遇到了问题,并遇到了与此Github Issue中相同的问题。

我的前端似乎没有使用键'connect.sid'处理存储在会话cookie中的会话ID,即使用户最初可以正确地进行身份验证并获得他们的JWT。但是,当绕过前端并使用POSTMAN发送请求时,会使用会话cookie。

我遇到的问题的主要症状是:

  • 使用Angular2前端时不会创建会话cookie。使用POSTMAN发送请求似乎已创建cookie。
  • 因此,req.isAuthenticated()调用始终为false(除非使用POSTMAN)

我现在推断出它必须是前/后端之间通信/处理请求/响应的问题。

过去几天我一直在经历其他问题:

  • 订购/检查使用声明:herehere
  • 将相应的标头添加到前端和后端的响应中:here

还有其他几个人。不过,我从中提出了以下问题:

问题(S)

  1. 使用JWT策略实现会话是否正确,知道两个应该彼此独占?
  2. 如果没有,您建议在这种情况下做什么?

0 个答案:

没有答案