Mongo-如何确定我所连接的用户具有哪些角色?如何为用户分配完全的读写访问权限?

jon*_*omo 4 mongodb user-roles mongodb-query

我已经能够从MacBook终端命令行连接到我的Mongo实例(该实例托管在Compose.io的云中-它是通过​​Heroku的“附加组件”)。

但是,我无法执行任何操作。诸如“显示集合”和“显示用户”之类的命令失败,并显示“未授权”错误。

如何找出我所连接的用户的角色?另外,如何添加具有完全读写权限的用户?我当然尝试过:

db.createUser({
    user: "accountUser",
    pwd: "password",
    roles: [ "readWrite", "dbAdmin" ]
})
Run Code Online (Sandbox Code Playgroud)

但是此命令失败 couldn't add user: not authorized on my_db to execute command

wdb*_*ley 5

要查看有关当前用户的信息,请db.getUser()在用户的数据库上运行。您需要与您的MongoDB提供者联系,以了解他们如何设置安全性,以找出如何向用户添加正确的角色。

  • 为未来的读者详细阐述: > 使用 admin (或在用户创建期间指定的authenticationDatabase) > db.getUser('current_username') (4认同)