meteor.user中hashedToken的用途是什么

时间:2015-02-24 12:44:21

标签: meteor reactive-programming meteorite meteor-accounts isomorphic-javascript

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

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

  

包含特定登录服务使用的数据。例如,其重置字段包含忘记密码链接使用的标记,其恢复字段包含用于让您在会话之间登录的标记。

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

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

感谢任何帮助...

1 个答案:

答案 0 :(得分:2)

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

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

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

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

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