ホームページ > バックエンド開発 > Golang > GoLang MongoDB 接続が「認証に失敗しました」というメッセージが表示されて失敗するのはなぜですか?

GoLang MongoDB 接続が「認証に失敗しました」というメッセージが表示されて失敗するのはなぜですか?

Linda Hamilton
リリース: 2024-12-04 12:21:10
オリジナル
300 人が閲覧しました

Why Does My GoLang MongoDB Connection Fail with

MongoDB ダイヤル エラー: "認証に失敗しました"

mgo パッケージを使用して GoLang で MongoDB 接続を確立しようとすると、多くのユーザーが「サーバーが返されました」という複雑なエラー メッセージに遭遇します。 SASL 認証ステップでエラーが発生しました: 認証に失敗しました。」このエラーは、特に指定されたユーザー名、パスワード、ホスト アドレス、データベース名が正しいことがわかっている場合にイライラする可能性があります。この問題を解決するには、次の解決策を検討することが重要です。

解決策:authenticationDatabase パラメータの追加

特定の MongoDB セットアップでは、次の場合に --authenticationDatabase パラメータを含める必要があります。接続を確立しています。このパラメータは、認証目的で使用するデータベースを指定します。デフォルトでは、MongoDB は接続先のデータベースと同じデータベース名を使用します。ただし、場合によっては、認証データベースが異なる場合があります。

エラーを解決するには、以下に示すように、提供された GoLang コードを変更して、authenticationDatabase パラメータを含めます。

mongoDialInfo: = & mgo.DialInfo {
 Addrs: [] string {
  dbHost
 },
 Database: dbName,
 Username: userName,
 Password: password,
 AuthenticationDatabase: "admin", // Change this to the appropriate authentication database
 Timeout: 60 * time.Second,
}
ログイン後にコピー

AuthenticationDatabase 値は、MongoDB セットアップ内の認証に使用される正しいデータベースと一致します。この変更を実装すると、MongoDB データベースに正常に接続でき、「認証に失敗しました」エラーを回避できるはずです。

以上がGoLang MongoDB 接続が「認証に失敗しました」というメッセージが表示されて失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート