首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >mongodb:限制对特定集合的读/写访问

mongodb:限制对特定集合的读/写访问
EN

Stack Overflow用户
提问于 2018-03-22 18:32:00
回答 1查看 4.5K关注 0票数 2

即使用户拥有数据库的读/写访问权限,我们是否可以限制数据库中特定集合的读/写访问?

例如:我有一个名为: PRODCAST的DB,它包含collA、collB、collC和collD。假设我们有10个用户,他们都可以访问PRODCAST数据库,并能够对DB中存在的所有集合执行读/写操作。

这里我的问题是,我们是否可以阻止所有用户执行读/写操作,特别是在 collC 上,因为collC具有一些敏感数据,因此即使他们拥有DB访问权限,我也不会向所有人展示。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-26 04:16:33

即使用户拥有数据库的读/写访问权限,我们是否可以限制数据库中特定集合的读/写访问?

在MongoDB 3.6中,角色和特权是附加的:您可以向用户授予额外的权限,但不能删除或限制已授予或继承的现有权限。

例如:我有一个名为: PRODCAST的DB,它包含collA、collB、collC和collD。假设我们有10个用户,他们都可以访问PRODCAST数据库,并能够对DB中存在的所有集合执行读/写操作。

建议的限制访问collC的方法是:

  • 显式授予每个集合的权限 (而不是对整个PRODCAST数据库的读/写访问),或
  • 为需要更多限制权限的集合创建单独的数据库

如果您的所有用户都需要一组公共访问权限,您可以创建一个用户定义(自定义)角色来简化管理。然后你就可以授予自定义角色了。PRODCAST),并在添加具有共享访问权限的新集合/数据库时,根据需要更新角色。

这里我的问题是,我们是否可以阻止所有用户执行读/写操作,特别是在 collC 上,因为collC具有一些敏感数据,因此即使他们拥有DB访问权限,我也不会向所有人展示。

对于访问敏感数据的进一步限制,可以使用上述任何一种方法来限制总的读/写访问,然后创建集合的只读视图 (MongoDB 3.4+)。与集合类似,对视图的访问需要读取访问权限。但是,对视图的读取权限可以在没有基础集合的读取权限的情况下被授予,因此敏感字段可以被完全编辑。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49436041

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档