Rumah > pembangunan bahagian belakang > Golang > Mengapa sambungan GoLang MongoDB saya gagal dengan ralat pengesahan SASL dan bagaimana saya boleh membetulkannya menggunakan `authenticationDatabase`?

Mengapa sambungan GoLang MongoDB saya gagal dengan ralat pengesahan SASL dan bagaimana saya boleh membetulkannya menggunakan `authenticationDatabase`?

Barbara Streisand
Lepaskan: 2024-12-05 13:01:16
asal
307 orang telah melayarinya

Why is my GoLang MongoDB connection failing with a SASL authentication error, and how can I fix it using `authenticationDatabase`?

Menyelesaikan masalah Ralat Pengesahan SASL MongoDB

Dalam GoLang, mewujudkan sambungan MongoDB selalunya memerlukan pengesahan. Kadangkala, pembangun menghadapi ralat "pelayan mengembalikan ralat pada langkah pengesahan SASL: Pengesahan gagal," walaupun memberikan bukti kelayakan yang betul. Untuk menyelesaikan isu ini, adalah penting untuk mempertimbangkan parameter authenticationDatabase.

Isu timbul apabila menyambung ke tika MongoDB jauh yang memerlukan authenticationDatabase ditetapkan secara eksplisit. Parameter ini menentukan pangkalan data yang mengesahkan pengguna. Secara lalai, ia ditetapkan kepada pangkalan data yang cuba diakses oleh pengguna. Walau bagaimanapun, jika pengguna mempunyai keistimewaan yang berbeza untuk pangkalan data yang berbeza, adalah perlu untuk menentukan pangkalan data pengesahan.

Untuk menggunakan parameter pangkalan data pengesahan dalam GoLang, cuma ubah suai struct DialInfo:

mongoDialInfo := &mgo.DialInfo{
    Addrs: []string{dbHost},
    Database: dbName,
    Username: userName,
    Password: password,
    Timeout: 60 * time.Second,
    // Add the authenticationDatabase parameter
    AuthenticationDatabase: dbName,
}
Salin selepas log masuk

Oleh menetapkan AuthenticationDatabase kepada nilai yang sama seperti Pangkalan Data, anda secara eksplisit menyatakan pangkalan data untuk digunakan untuk pengesahan. Ini memastikan bahawa bukti kelayakan pengguna disahkan dengan betul dan pengesahan berjaya.

Atas ialah kandungan terperinci Mengapa sambungan GoLang MongoDB saya gagal dengan ralat pengesahan SASL dan bagaimana saya boleh membetulkannya menggunakan `authenticationDatabase`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan