Problemet är att databasanvändaren skapas på admin
databas istället för dbname
.
Utelämnar /dbname
från anslutningssträngen / mongo-skalet / etc. betyder att anslutningssträngen kommer att autentiseras till admin
databas. Citerar dokumenten:
(https://docs.mongodb.com/manual/reference/connection -string/#components ).
Om /dbname
är definierad, kommer anslutningssträngen att autentisera mot dbname
såvida inte authSource
parametern är konfigurerad för att ange i vilken databas användaren är bosatt.
Du kan bekräfta att så är fallet genom att antingen lägga till authSource=admin
till anslutningssträngen eller --authenticationDatabase admin
till mongo shell-kommandot
.
Alternativt kan du använda db.getUsers()
för att se databasen där en användare skapades.