Node.js 使用猫鼬&x27;s授权的目标

Node.js 使用猫鼬&x27;s授权的目标,node.js,express,authentication,mongoose,jwt,Node.js,Express,Authentication,Mongoose,Jwt,使用mongoose生成的ObjectId作为检查数据是否属于某个用户的一种方法是否是一种好做法 sudo代码示例: 以db为单位的示例: [ObjectId]: { myStuff: 'foo' } 检查授权的示例: if (jwt.bar.ObjectId === ObjectId) { //then you can mod this data because it is yours } 如果没有,建议采用什么方法来实现这一点 不能将ObjectID用作会话标识符,因

使用mongoose生成的ObjectId作为检查数据是否属于某个用户的一种方法是否是一种好做法

sudo代码示例:

以db为单位的示例:

[ObjectId]: {
     myStuff: 'foo'
}
检查授权的示例:

if (jwt.bar.ObjectId === ObjectId) {
     //then you can mod this data because it is yours
}

如果没有,建议采用什么方法来实现这一点

不能将ObjectID用作会话标识符,因为一旦创建文档,它就不会被更新,而且是可预测的

发件人:

12字节的ObjectId值包括:

一个4字节的值,表示自Unix纪元以来的秒数

一个3字节的机器标识符

一个2字节的进程id

和一个3字节的计数器,从一个随机值开始

从安全的角度来看,这将是一种糟糕的做法


使用适当的会话ID来识别来自用户的请求。

可能重复@Thank。使用NPM的“uniqid”之类的工具生成UID,然后将其保存在用户配置文件下,以便用于同一提议,这是一个好主意吗?