web-dev-qa-db-ja.com

mongoデータベースのurlでauthSourceはどういう意味ですか?

次の接続文字列で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」のことをクリアしてくださいませんか?.

15
gaurav malik

これは、ユーザー資格情報を持つコレクションを持つデータベースの名前です。

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

ここでユーザー名とパスワードを設定します。

10
Thilo

今日、この問題を解決するために数時間費やしましたが、残念ながら、このSOの投稿は検索に表示されませんでした。これは、問題への最良の回答が記載されている投稿であるため、あまりにも悪かったです。

受け取ったエラーメッセージを追加して、次の人を助けたいと思います。

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
0
Bryan