因此,我有一个具有以下角色的 mongo db 用户:
% mongo --username userw --password password --authenticationDatabase admin --host host
...
> use admin
switched to db admin
> show users
{
"_id" : ObjectId("525d880dcd6e5e57f9431e16"),
"user" : "userw",
"pwd" : "****************",
"roles" : [
"readWriteAnyDatabase",
"listDatabases"
]
}
用户可以成功读取和写入任何数据库,但如果我这样做:
> show dbs
Thu Oct 17 08:46:27.523 listDatabases failed:{ "ok" : 0, "errmsg" : "unauthorized" } at src/mongo/shell/mongo.js:46
我似乎缺少一个让我列出数据库的角色。我需要哪个角色?(clusterAdmin 解决了这个问题,但似乎有点矫枉过正)。