Alrigh,所以我已经建立了一个完整的护照本地授权,每件事情都非常完美,除了我似乎无法用passport.js解决一个问题。
我通过会话授权用户(他们工作正常),但我似乎无法从该会话中提取用户信息,但如果我手动检查我的会话数据库,则每个会话都有一个用户ID(链接到用户)。 此外,反序列化函数似乎返回用户,日志显示正确的用户。
现在问题是我似乎无法在我的路线中的任何地方传递此用户< - >会话信息。 我似乎遇到的问题是,登录的人员是经过授权的,但是他们可以随心所欲地处理请求主体,在他们的名字中发布消息,将其记录下来,......
代码示例:
docker inspect <containerId>
在此代码中,它只是检查用户是否已登录,如果可能,我想检查哪个用户登录到该会话,以便他无法验证此游戏是否为不属于它。
假设用户A,B是游戏的一部分,需要验证它。此功能允许登录的用户C验证它们,因为此功能仅检查用户是否已登录。
如果我可以将登录用户(测试用例中的用户C)传递给gameController,我可以在那里编写自己的支票并将其丢弃。
答案 0 :(得分:1)
Passport将填充req.user
。它将由deserializeUser
提供的数据填充,该数据通常是用户的数据库记录。
您可以使用该信息来限制其他数据库查询/检查/等,以确保允许登录用户访问特定信息。