这是Node.js和Socket.io的声音身份验证方案吗?

时间:2016-02-21 22:26:00

标签: node.js express cookies socket.io redux

我正在尝试使用Node.js(Express),Socket.io和Redux / ReactJS设置用户登录系统。这是我正在采取的方法:

  1. 用户在访问网络应用程序后立即通过Socket.io连接。
  2. 通过socketio-auth,用户需要进行身份验证并将其用户名和密码传递给服务器。
  3. 然后,使用socket.io-express-session,就像在this example中一样,我使用用户的用户名和密码设置了一个cookie,这样每次他们回到网站时,都可以通过{{{}重新进行身份验证。 3}}。 (我意识到我可能会在cookie中保存一个唯一的令牌,这会更好吗?)
  4. 在服务器上,经过身份验证,我只是将他们的socketId保存到Redux商店,以便在会话持续时与每个Socket.io请求一起使用。
  5. 假设这一切都是在SSL完成的,这样安全吗?你会建议什么改变?我试图让它变得尽可能简单但仍然非常安全。

1 个答案:

答案 0 :(得分:0)

似乎第3点,本地存储,是现在最好的方法。

查看其他人的讯问:https://github.com/hueniverse/hawk/issues/138#issuecomment-196989520