我花了几个小时进入MongoDB。 我无法弄清楚特定的角色/特权集(也需要了解差异)
这是我的问题:
提供了一个数据库db_xyz
用户ABCD
可以;
ABCD
创建的集合进行读/写/更新/删除/查找访问ABCD
创建的收藏集我将通过Mongo提示符并使用pymongo来混合这些操作。
答案 0 :(得分:1)
MongoDB允许我们使用db.createRole()
创建"User Defined Roles",以获取有关db.createRole()
see here
以下代码用于创建一个具有读取/写入/更新/删除/查找选项的角色Role_1
use db_xyz
db.createRole(
{
role: "role_1",
privileges: [
{ resource: { db: "db_xyz", collection: "" }, actions: [ "find", "update", "insert", "remove" ] },
],
roles: []
}
)
创建角色后,在db.grantRolesToUser()
see here上使用db.grantRolesToUser()
更多信息
下面显示的代码是将新创建的role_1分配给我们的用户ABCD
use db_xyz
db.grantRolesToUser(
"ABCD",
[
{ role: "role_1", db: "db_xyz" }
]
)