在passport doc中,它们显示了将用户对象添加到请求对象的示例,如下所示:
app.post('/login',
passport.authenticate('local'),
function(req, res) {
// If this function gets called, authentication was successful.
// `req.user` contains the authenticated user.
res.redirect('/users/' + req.user.username);
});
我们小组中的一位工程师最近指出,在请求对象(例如req.user)上存储任何内容都是一个坏主意。他具体说,因为它可能来自任何地方。
我的想法是我们控制运行在快递服务器上的代码,因此这应该不是问题,如果流是https,则端到端应该是安全的。
我不是安全专家,但我很担心。
我的问题是,我们不应将任何东西附加到req对象上并依靠它的想法是否正确?这样做是不安全的,通常是一个坏主意吗?