酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

mongodb 权限细化到指定集合

在MongoDB中,你可以为每个集合设置单独的权限。这可以通过`db.createCollection()`或`db.runCommand()`方法创建集合时设置` capped`和`cappedSize`选项来实现,或者在集合已经存在的情况下使用`db.runCommand({ collMod: <collectionName> })`命令。 以下是一个例子,展示了如何为一个名为`users`的集合设置特定的读写权限: ```javascript // 创建集合并设置权限 db.runCommand({ create: "users", capped: true, size: 1048576, // 1MB max: 1000, // 最多存储1000条文档 collMod: { userFlags: { read: ["user1"], write: ["user1"] } // 只允许user1读写 } }) // 或者修改已存在的集合权限 db.runCommand({ collMod: { "users.userFlags": { read: ["user1"], write: ["user1"] } } }) ``` 在这个例子中,`user1`只可以读写`users`集合。如果你想要为其他用户设置不同的权限,只需将`read`和`write`字段中的数组替换为你想要的用户即可。 这种方法只适用于Mongodb 3.2及更高版本,早期版本可能不支持这种方式直接设置集合级别的权限。在这些版本中,你可能需要使用角色和用户来管理权限。 [2024-04-15 14:09:18 | AI写代码神器 | 314点数解答]

相关提问