mongodb - 如何配置 MongoDB 以使用用户名和密码进行连接?
问题描述
我有一个带有 Ubuntu 16.04.5 的 VMWare VM,并且刚刚安装了 MongoDb 3.6(不是最新的,但它与生产环境匹配)
在远程外壳中,我可以运行mongo
,所以我的mongod
服务正在运行。
这是/etc/mongod.conf
关于身份验证的文件的一部分
# network interfaces
net:
port: 27017
bindIp: 127.0.0.1, 192.168.1.50
security:
suthorization: enabled
我将此用户创建到数据库中admin
> use admin
switched to db admin
> show users
{
"_id" : "admin.realtebo",
"user" : "realtebo",
"db" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
然后我重新启动mongod
服务。
问题
我不能再使用mongo
shell 客户端访问,它拒绝我的连接
mongo -u realtebo -p passsword_i_setup_for_user_realtebo
MongoDB shell version v3.6.9
connecting to: mongodb://127.0.0.1:27017
2019-01-16T09:06:51.416+0100 W NETWORK [thread1]
Failed to connect to 127.0.0.1:27017,
in(checking socket for error after poll), reason: Connection refused
2019-01-16T09:06:51.416+0100 E QUERY [thread1]
Error: couldn't connect to server 127.0.0.1:27017,
connection attempt failed :
connect@src/mongo/shell/mongo.js:257:13
@(connect):1:6
exception: connect failed
重要笔记
当然,删除
authorization: true
并重新启动,我可以再次访问,所以daeom运行良好,但我想学习正确的方法:使用用户和密码是最低限度的我验证了这个确切的用户/密码组合正在开发一个使用这些凭据工作的小 nodejs 应用程序,并且在不使用它们的情况下失败,所以密码是正确的
我尝试删除身份验证并验证 Windows 主机上的“Studio 3T”(mongodb 客户端)可以成功访问来宾上的 MongoDb,因此 VM 没有端口/防火墙/其他问题
其他尝试
指定身份验证数据库失败,admin
您可以在此处看到上面的一些行。
mongo -u realtebo -p passsword_i_setup_for_user_realtebo --authenticationDatabase admin
简单的问题,我希望
在 mongodb 中创建具有用户和密码的超级用户之类的正确方法是什么?然后我必须从 win 客户端和 linux shell 客户端使用哪种“方法”来访问它?
我知道我必须为单个特定数据库创建另一个用户,我想是 readWrite,但这不是实际问题。现在我需要能够以超级用户身份登录来管理它
解决方案
这是一个如此简单的愚蠢错误。
我修正了以下错字,注意
s
代替a
insuthorization
security: suthorization: enabled
重启服务
从 linux shell 我可以成功连接使用
mongo -u realtebo -p passsword_i_setup_for_user_realtebo --authenticationDatabase admin
从 Windows 客户端我设置身份验证方法
legacy
并输入用户名和密码
现在一切正常
推荐阅读
- java - 我可以在纯 Java 项目中使用使用 Kotlin 协程构建的库吗?
- tensorflow - 如何解释 TensorBoard 损失图?
- networking - 使用 Firefox 时,负载平衡会忽略我一半的节点数
- c - 如何在共享内存数据中完成同步linux c
- python-3.x - 显示除零之外的最小值以及每年的相邻列值+ Python 3+,数据框
- sql-server - 在 SQL Server 中查询以组合表
- apache-spark - hadoop集群上可能存在内存泄漏?(蜂巢,hiveserver2,齐柏林飞艇,火花)
- firebase - 当我通过 expo react native 将图像上传到 firebase 时,它没有显示图像;显示错误加载预览
- php - Wordpress 页面和模板查询
- javascript - 从场景图树循环