如果我允许用户创建自己的MongoDB集合,会出现什么问题



我正在构建一个基本的无代码解决方案,以构建支持MongoDB集合上CRUD操作的RESTful APIS。现在它只是一个概念验证项目,我在内部使用,没有外部用户。

前几天我在Stack Overflow上看到了这个问题,我认为它可以让我将这个小项目转换为SaaS概念。

允许用户在MongoDB中创建自己的集合可能是不安全的,但我想不出任何灾难性的后果。。。也许是恶意用户可以故意创建性能糟糕的集合?或者用户可以注入一些对其他集合的引用。。。?

拥有一个独立的Mongo数据库是否有助于减轻这些攻击?或者你能给我更多的理由解释为什么这是个坏主意吗?

非常感谢!

您可以通过访问控制使用mongo管理用户和权限(数据库、集合等(

https://docs.mongodb.com/manual/tutorial/enable-authentication/https://docs.mongodb.com/manual/core/collection-level-access-control/

您还可以创建";加盖收藏";限制集合的大小

https://docs.mongodb.com/manual/core/capped-collections/

我不知道你怎么能限制";用户性能";但如果你能找到答案,我很感兴趣:(