mongodb - mongodb 中是否有任何方法可以创建仅对数据库的特定视图具有“读取”访问权限的“用户”?
问题描述
我已经创建了一些我想提供给前端开发人员的 JSON 视图。我希望前端开发人员只能访问此视图。不是整个集合或数据库。此视图包含跨集合“$lookup”聚合。
我们如何创建具有只能访问“db”的“视图”甚至不能访问“集合”的角色的用户?
解决方案
MongoDB 中的权限基于角色。会是这样的:
const admin = db.getSiblingDB("admin")
admin.createRole({ role: "read_views", privileges: [], roles: [] })
admin.grantPrivilegesToRole("read_views", [
{
resource: { db: "<database name>", collection: "<view name>" },
actions: ["find"]
}
])
推荐阅读
- c# - 无法通过 Jenkins 执行 NUnit Selenium 测试 - 目标机器主动拒绝连接
- mysql - MYSQL 准备语句过程,它更新表的可变数量的列
- csv - 如何使用 avro 模式对象作为 pyspark 上的标头读取 CSV?
- python - Pygame - 如何使碰撞箱与敌人的运动一起工作?
- c - 使用公式解码汉明码(7,4)
- c# - 为什么我收到此错误 System.FormatException: 'String was not recognized as a valid DateTime.'?
- python - 如何在 matplotlib 的分组条形聊天中对齐 xticks?
- webpack - webpack 模块解析失败:意外字符 '�' (1:0)
- r - 将矩阵转换为栅格时输出错误
- r - 将分层数据连接到 R 中的另一个表