首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以在MongoDB中进行身份验证,但不能通过命令行进行验证。

可以在MongoDB中进行身份验证,但不能通过命令行进行验证。
EN

Server Fault用户
提问于 2014-08-04 21:02:25
回答 2查看 27.4K关注 0票数 4

我有一个连接到MongoDB数据库的应用程序,名为“讨论”。我创建了一个用户

蒙戈炮弹:

代码语言:javascript
复制
> use discussions
switched to db discussions
> db.auth("discussions","XXXXXXXXX")
1
> show users
{
        "_id" : "discussions.discussions",
        "user" : "discussions",
        "db" : "discussions",
        "roles" : [
                {
                        "role" : "dbOwner",
                        "db" : "discussions"
                }
        ]
}

因此,这是为了确认我在数据库中确实有一个帐户,并且它是一个dbOwner。根据文档,它具有读、写等权限。

配置文件启用了属性"auth = true“,并且自更改以来服务已被反弹不止一次。

但是,问题是,当我试图从shell外部连接到数据库时,总是会得到错误:

代码语言:javascript
复制
mongo  discussions -u 'discussions' -p 'XXXXXXXXX'
MongoDB shell version: 2.6.3
connecting to: discussion
2014-08-05T01:00:39.026+0400 Error: 18 { ok: 0.0, errmsg: "auth failed", code: 18 } at src/mongo/shell/db.js:1210
exception: login failed

我在Stackoverflow上看到了关于这个的问题,它们都与用户名和密码周围使用的引号有关.但是将单引号改为双引号并没有产生更好的效果。

EN

回答 2

Server Fault用户

回答已采纳

发布于 2014-08-05 04:10:50

通过删除任何符号解决了这个问题。尽管有引号,但单人或双人间似乎会导致传入的密码无效。

票数 2
EN

Server Fault用户

发布于 2014-08-04 21:12:30

也许我错了,但正确的表格是这样的:

mongo -端口27017 -u管理器-p 12345678 -身份验证数据库管理

您可以在mongo文档中看到这方面的内容:

http://docs.mongodb.org/manual/tutorial/add-user-to-database/

票数 5
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/617907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档