Mongo - 如何找出我连接的用户的角色?如何为用户分配完全读写访问权限?
Posted
技术标签:
【中文标题】Mongo - 如何找出我连接的用户的角色?如何为用户分配完全读写访问权限?【英文标题】:Mongo - How can I find out what roles the user I am connected as has? How can I assign a user full read-write access? 【发布时间】:2015-01-06 22:57:21 【问题描述】:我已经能够从我的 MacBook 终端命令行连接到我的 Mongo 实例(托管在 Compose.io 的云中——它是一个通过 Heroku 的“插件”)。
但是,我无法执行任何操作。像“show collections”和“show users”这样的命令会因为“未授权”错误而失败。
如何找出我连接的用户的角色?另外,如何添加具有完全读写权限的用户?当然我试过了:
db.createUser(
user: "accountUser",
pwd: "password",
roles: [ "readWrite", "dbAdmin" ]
)
但是这个命令失败了couldn't add user: not authorized on my_db to execute command
【问题讨论】:
【参考方案1】:要查看有关当前用户的信息,请在用户的数据库上运行db.getUser()
。您需要与您的 MongoDB 提供商核实他们是如何设置安全性的,以了解如何为您的用户添加正确的角色。
【讨论】:
谢谢 - 我如何找出用户的数据库是什么? 为未来的读者详细说明:> 使用 admin(或在创建用户时指定的 authenticationDatabase)> db.getUser('current_username')以上是关于Mongo - 如何找出我连接的用户的角色?如何为用户分配完全读写访问权限?的主要内容,如果未能解决你的问题,请参考以下文章
如何为 Spring Security 创建类型安全的用户角色?