Ben*_*eau 2 authentication mongodb
我刚刚将我的MongoDB实例从2.4.x升级到最新的2.6.我通过更新此属性配置Mongo以启用身份验证:
auth = true
Run Code Online (Sandbox Code Playgroud)
然后,我在每个集合中创建了具有特定角色的用户.它运作良好.
但我有RockMongo连接到此实例,我有这个错误:
无法连接到:XXX:YYY:用户名为"ZZZZ"的数据库"local"上的身份验证失败:auth failed
我试图连接到'本地'数据库,并创建一个像这样的新用户:
use local
db.createUser(
{
user: "XXX",
pwd: "YYY",
roles: [ { role: "readWrite", db: "local" }, { role: "userAdminAnyDatabase", db: "local" } ]
}
)
Run Code Online (Sandbox Code Playgroud)
但是,我收到一个错误:
2015-02-20T15:49:55.892 + 0000错误:无法添加用户:无法在src/mongo/shell/db.js的本地数据库中创建用户:1004
有什么想法,为什么?
谢谢你的帮助.
您无法在本地数据库中创建用户http://docs.mongodb.org/manual/reference/method/db.createUser/#local-database
相反,您可以在admin数据库中创建可以在本地db中读取的用户:
use admin
db.createUser(
{
user: "XXX",
pwd: "YYY",
roles: [ { role: "readWrite", db: "local" } ]
}
)
Run Code Online (Sandbox Code Playgroud)
以用户XXX身份登录时,请务必指定 --authenticationDatabase admin
归档时间: |
|
查看次数: |
5633 次 |
最近记录: |