保护mongodb数据库免受电子邮件提交中的查询注入

时间:2018-01-26 15:28:04

标签: node.js mongodb email mongodb-query sql-injection

我正在使用node.js和mongodb数据库编写我的第一个API,我担心安全问题。

在代码中我有这一行:

collection.count({email: req.body.email})

和这一个:

collection.insert(req.body)

其中 req.body 是用户使用其信息发送的用户对象(电子邮件,姓名,哈希密码...)。 我认为解析用户发送的内容很危险。

req.body.email 是否算作解析? 如果是,我想在使用 mongo-sanitize 的请求之前对其进行消毒,但查看其代码,似乎它会删除“。”和“$”都是电子邮件地址的授权字符。

所以我的问题是:如何在不丢失信息的情况下安全地存储电子邮件地址?

(如果我清理“surname.name@gmail.com”,我得到“namesurname @ gmailcom”,如果没有先前一个严格存储包含禁用字符的位置和类型的数组,我就无法检索地址)< / p>

0 个答案:

没有答案