我需要知道关于防止sql注入NodeJS序列化ORM



我是一个初学者nodejs序列化ORM。我想知道如何防止sql注入NodeJS序列化ORM。

例子我有一个像http://localhost:3000/admin/video/edit/5这样的路由控制器看起来像

albumEdit: async (req, res) => {
const editInfoId = req.params.id;
await Movie.findOne({ where: { id: editInfoId } }).then((movie) => {
if (movie) {
res.render('admin/movies/edit', { title: 'Edit Movie On Page One', movie });
}
});
},

现在我需要知道如何保护数据库从SQL注入?

表明{ where: { id: editInfoId } }已经避免了SQL注入,因为Sequelize将id值作为静态字符串传递给底层SQL查询参数。

使用where选项,当其中一些从不受信任的来源传递时,不从字符串连接任何SQL查询片段,这将是避免SQL注入的一个良好开端。

尝试只使用简单的object类条件(就像你上面所做的那样),或者使用Sequelize.Op的一些操作符的组合。

相关内容

  • 没有找到相关文章

最新更新