【问题标题】:MongoDB Error: "not authorized for query on admin.system.users"MongoDB 错误:“未授权查询 admin.system.users”
【发布时间】:2013-12-30 23:44:44
【问题描述】:

如何使用以下配置在 MongoDB 上设置身份验证?

2 个 mongoD 实例,分片集合。
另一个服务器上的 1 个 mongoS 实例。
1 个 mongoD 作为配置服务器。

每当在 mongod 上打开身份验证时,我都无法在任何服务器上登录,用户已创建,但我仍然无法登录。尝试登录mongoS实例时出现如下错误:

$err: "未授权查询 admin.system.users"

【问题讨论】:

    标签: mongodb authentication


    【解决方案1】:

    如果您遇到像我一样的问题,很可能您无法查询任何内容(您未获得授权的类似消息)。

    我偶然注意到如果我运行两个不同版本的 mongo 守护程序 (win7/ent),第二个守护程序会启动,但不关心其他 mongo 是否正在侦听,因此不清楚哪个守护程序接受请求。

    当我停止所有守护进程并启动一个时,一切都开始工作了。 (对我来说)

    【讨论】:

    • 我相信可以在同一个 cpu 上运行两个实例,只要它们绑定到不同的端口。
    • 感谢 ljgww,我解决了关闭 mongoD、S、C 上的所有实例、在没有身份验证的情况下启动它们、首先创建所有用户并通过身份验证重新启动所有 mongo 实例的问题。顺便说一句,我的错是我没有正确理解 mongo 的所有“角色”,这让我尝试使用不在角色“queryInAnyDatabase”或类似角色中的超级管理员用户进行查询。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-18
    • 1970-01-01
    • 1970-01-01
    • 2018-09-03
    • 2015-02-14
    • 1970-01-01
    相关资源
    最近更新 更多