mongodb:为什么dbowner没有被授权显示(列出)用户或角色?

时间:2017-02-22 18:33:54

标签: mongodb

我在测试和开发数据库

上创建了一个具有dbowner角色的用户
[admin] >show users
{
    "_id" : "admin.apiuser",
    "user" : "apiuser",
    "db" : "admin",
    "roles" : [
        {
            "role" : "dbOwner",
            "db" : "rest-api-test"
        },
        {
            "role" : "dbOwner",
            "db" : "rest-api-development"
        }
    ]
}
验证后

$ mongo -u apiuser -p my password --port 7272 --authenticationDatabase admin

我无法在测试数据库中列出用户

[test] user: apiuser>show users
2017-02-22T19:03:05.744+0100 E QUERY    [thread1] Error: not authorized    
on test to execute command { usersInfo: 1.0 } :

既不在开发db

[test] user: apiuser>use development
switched to db development
[development] user: apiuser>show users
2017-02-22T19:04:08.983+0100 E QUERY    [thread1] Error: not authorized 
on development to execute command { usersInfo: 1.0 } :

Mongodb doc表明dbowner角色提供了对数据库执行任何管理操作的功能。它结合了readwrite,dbAdmin和userAdmin角色

授予的权限

显示用户不是userAdmin授予的权限?不太清楚...... 有人可以开导我吗?我应该如何创建' apiuser'用户和角色对测试和开发数据库执行任何操作,尤其是CRUD用户和角色... 感谢

1 个答案:

答案 0 :(得分:0)

发现我的错误......

我正在使用开发db,我应该使用rest-api-development!太糟糕了