在meteor.user 中使用hashedToken 有什么用

Gop*_*iva 6 reactive-programming meteor meteorite meteor-accounts isomorphic-javascript

嗨,我是 Meteor 的新手,我想知道在 Meteor.user 对象中生成的 hashedToken 的用途是什么。

在 Meteor 文档中,解释了服务对象,

包含特定登录服务使用的数据。例如,它的重置字段包含用于忘记密码链接的令牌,其简历字段包含用于在会话之间保持登录的令牌。

当我检查 localstorage 时,Meteor.loginToken 似乎与 hashedToken 不同。

所以我的问题是,1.本地存储中生成的 Meteor.loginToken 和服务对象内部生成的 hashedToken 有什么区别?2.还有为什么resume.loginTokens里面的service对象是一个数组?

任何帮助表示赞赏...

Aks*_*hat 5

所以 loginToken 是一串可以留在计算机上的字符,类似于 cookie 令牌。您不想将实际的用户名和密码留在计算机上,因此会使用令牌。

然后,该令牌用于向服务器进行身份验证并代替用户名/密码登录。

阵列中有多个它们,因为您可以同时登录多个设备。每个人都会有自己的令牌。

令牌被散列的原因是对数据库安全性的额外措施。客户端上的令牌经过 sha256 散列并与已散列的数据库上的令牌匹配,以尝试自动登录用户。

它们被散列的原因是没有人可以将它们用作 loginToken localStorage 表单,通过从数据库中复制它并将其粘贴为 localstorage logintoken 来以某个用户的身份登录。它类似于能够用于登录用户的明文密码。

  • @gopinathshiva 如果它们使用 cron 作业 Meteor 运行过期,它们将被删除。要手动删除它们,您可以使用此方法 http://docs.meteor.com/#/full/meteor_logoutotherclients,然后如果您想清除所有这些,请注销自己。如果您有更多与原文无关的问题,请以这种方式打开其他人,它可以帮助其他在评论中可能找不到太多帮助的用户。 (2认同)