2016-07-07 18 views
6

私はMongo Atlas Cloudを試しています。これは、ドキュメント内の接続文字列である Mongo Atlas:カスタムデータベースで接続認証に失敗しました

mongo mongodb://***-cluster-shard-00-00-***.mongodb.net:27017,***-cluster-shard-00-01-***.mongodb.net:27017,***-cluster-shard-00-02-***.mongodb.net:27017/any_database?replicaSet=****-Cluster-shard-0 --ssl --username ***** --password ***** 
(モンゴドライバと同じ問題):私は、クラスタを作成して、私はモンゴシェルとの接続をしようとしています。これはエラーです:

MongoDB shell version: 3.2.7 
connecting to: mongodb://***-cluster-shard-00-00-***.mongodb.net:27017,***-cluster-shard-00-01-***.mongodb.net:27017,***-cluster-shard-00-02-***.mongodb.net:27017/any_database?replicaSet=***-Cluster-shard-0 
2016-07-07T01:31:17.535-0300 I NETWORK [thread1] Starting new replica set monitor for ***-Cluster-shard-0/***-cluster-shard-00-00-***.mongodb.net:27017,***-cluster-shard-00-01-***.mongodb.net:27017,***-cluster-shard-00-02-***.mongodb.net:27017 
2016-07-07T01:31:17.535-0300 I NETWORK [ReplicaSetMonitorWatcher] starting 
2016-07-07T01:31:20.084-0300 E QUERY [thread1] Error: Authentication failed. : 
[email protected]/mongo/shell/db.js:1441:20 
@(auth):6:1 
@(auth):1:2 

exception: login failed 

adminデータベース "/ admin?"を使用している場合のみ、データベースに接続できます。接続文字列に

問題:

私は、コンソールまたはMongoのドライバでカスタムデータベースに接続する必要があります。

PD:私はあなたが管理データベースで認証 "***"

答えて

8

と私のデータを保護します。そこからデータベースを切り替えることができます。

Mongoのドライバを使用して接続する場合、接続文字列のニーズが認証ソースを追加します。あなたは、モンゴシェル経由で接続する場合は、「--authenticationDatabase admin」を使用し、

/any_database?authSource=admin&replicaSet=xyz 
+0

ありがとう、mongoアトラスのサポートは私に同じ答えを与えます。 – andrescabana86

6

はナースの答えを追加し、「認証発信元=を使いますドライバーの場合は「admin」です。 [MongoDBのシェルバージョン:3.2.8]でテスト

+0

お時間をいただきありがとうございます – andrescabana86

1

"authSource=admin"は、すべてのアトラスの接続のための必要条件です。