暴露用户独特的MongoDB _id是否存在安全风险?

时间:2016-06-01 16:04:48

标签: node.js mongodb security

在我的网络应用程序中,我将用户数据存储在MongoDB文档中。它们具有唯一的_id属性。要检索与用户创建的项目关联的上传,我创建了以下API:

/api/uploads/:user_id/:item_id/:fileName

在后端,我只需返回位置/uploads/<user_id>/<item_id>/<fileName>

的文件

虽然项目记录本身将具有唯一ID,但此文件夹结构将使删除与一个用户关联的所有项目更加清晰,因为我可以简单地删除名为<user_id>的整个文件夹。

但是,通过这种方式进行设置,我清楚地将用户唯一的_id暴露给访问其公开上传的所有人。

现在我的问题是,有什么方法可能会带来安全风险吗?恶意黑客可以对用户的唯一ID做什么?

1 个答案:

答案 0 :(得分:3)

我认为这不是一个重大风险。从概念上讲,黑客可能会将您提供的任何信息用于恶意。对于_id而言,没有什么特别特别的东西可以让你比其他任何东西都更具风险。

无论您在网址中添加了什么内容,您都希望确保自己执行适当的访问控制并确保可用性等。