authSource 在 mongo 数据库 url 中意味着什么?

What does authSource means in mongo database url?

我正在尝试使用以下连接字符串连接到我的 mongo 数据库

var Mongo_url = 'mongodb://MyUSer:tech@localhost:27017/chatme?authSource=admin';  

我收到错误

 assertionError: null == { [MongoError: Authentication failed.]
 name: 'MongoError',
 message: 'Authentication failed.',
 ok: 0,
 code: 18,

谁能帮我解决这个 "authSource=admin" 问题。

这是包含用户凭据集合的数据库的名称。

https://docs.mongodb.com/manual/reference/connection-string/#connections-connection-options

这是设置用户名和密码的地方。

我今天花了几个小时试图解决这个问题,不幸的是,这个 SO post 没有出现在我的搜索中。这太糟糕了,因为它是问题的最佳答案 post。

我希望通过添加我收到的错误消息来帮助下一个人。

我正在通过 docker-compose yaml 文件启动的 Docker 容器内设置连接。用户名和密码从 .env 文件传递​​到 docker-compose。

有效的连接 URI

mongodb://aUser:aPassword@mevn-app-mongo:27017/myDb?authSource=admin

错误:

SASL SCRAM-SHA-1 authentication failed for aUser on myDb from client 172.25.0.3:37352 ; UserNotFound: Could not find user aUser@myDb