在AngularJS中本地保存会话有多安全?

时间:2017-03-21 08:55:12

标签: angularjs node.js jwt

所以这是我的结构:

  1. HTML表单向nodejs发送身份验证。
  2. 使用passportjs>进行身份验证res.send userid jwt-simple(json网络令牌)$localStorage.user
  3. 收到的信息保存在post中。我在所需的任何控制器中使用该信息并将其包含在内,并将get / nodejs个请求发送到DB
  4. 我在nodejs中解码信息并查询@
  5. 这样安全吗?这是它在现实世界中的运作方式吗?

    非常感谢。

1 个答案:

答案 0 :(得分:1)

@Somename: 您提到的工作流程略显正确。 完成护照认证的理想方式是,

  1. 用户登录用户名和护照。
  2. 发送包含这些表单数据的发布请求。
  3. 使用Passport验证凭据。使用 passport.authenticate 将调用serializeUser并获取有效用户(如果存在)。否则,我们会返回登录错误响应。
  4. 成功登录将自动在后端创建会话,将其保存在sessionStorage中并将其与响应一起添加。
  5. 一旦在客户端获取响应,此cookie将自动保存到浏览器的本地存储中。
  6. 每次发送后续API请求时,我们都需要在req标头中包含此Cookie。
  7. 每次在后端,此Cookie应为validated passport.authorize 将再次使用该Cookie并检查会话是否有效。
  8. 用户退出后退出会话。

    希望我已经为你清楚了。