嗨我是Meteor的新手,我想知道在Meteor.user对象中生成的hashedToken的用途是什么.
在Meteor文档中解释了服务对象,
containing data used by particular login services. For example, its reset field contains tokens used by forgot password links, and its resume field contains tokens used to keep you logged in between sessions.
当我检查localstorage时,Meteor.loginToken似乎与hashedToken不同.
所以我的问题是,
1.本地存储中生成的Meteor.loginToken和服务对象内生成的hashedToken有什么区别?
2.另外为什么service.loginTokens里面的服务对象是一个数组?
任何帮助表示赞赏……
最佳答案 因此,loginToken是一串字符,可以留在计算机上,类似于cookie令牌.您不希望在计算机上保留实际的用户名和密码,因此使用令牌.
然后,令牌用于向服务器进行身份验证并登录以代替用户名/密码.
阵列中有多个,因为您可以同时登录多个设备.每个人都有自己的令牌.
对令牌进行哈希处理的原因是对数据库的额外安全措施.客户端上的令牌是sha256哈希并与已经散列的数据库上的令牌匹配,以尝试自动登录用户.
它们被散列的原因是没有人可以使用它们作为loginToken localStorage表单来登录某个用户,方法是将其从数据库中复制并粘贴为localstorage logintoken.它类似于能够用于登录用户的明文密码.