[英]MongoDB: Which permissions are needed for a user to create a database?
我们需要创建一个特殊角色,该角色将仅允许以下操作:
创建数据库需要哪些MongoDB角色? 它没有写在这里的文档中的任何地方https://docs.mongodb.com/manual/reference/built-in-roles/似乎没有一个已知的角色可以执行此任务
我认为readWrite
是您需要的角色。 我尝试了以下操作:
admin
数据库 aaa
用户,定义admin
数据库,用密码和两个角色: readWrite
上(不存在)的数据库xxx
和dbAdmin
上(不存在)数据库yyy
aaa
用户连接到admin
数据库 因此,我尝试在xxx
和yyy
数据库中的test
集合中插入文档:
use xxx
db.test.insert({})
有反应在2毫秒内插入1条记录
use yyy
db.test.insert({})
响应未授权yyy执行命令...
该错误消息表示aaa
无法在test
执行insert
:数据库创建是在第一次插入时发生的,因此您需要具有readWrite
角色才能进行第一次insert
==>创建数据库。
我希望我采用的检查问题的方法可以帮助您解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.