Довідка:
https://docs.mongodb.com/manual/reference/connection-string/#connections-connection-options
Вам потрібно буде використовувати формат нижче і не потрібно використовувати адміністраторну базу даних.
mongodb: // користувач: пароль @ localhost / test? authSource = admin
/ База даних необов'язково Ім'я бази даних для автентифікації, якщо рядок з'єднання включає в себе облікові дані автентифікації у вигляді імені користувача: пароль @. Якщо / база даних не вказана, а рядок з'єднання включає в себе облікові дані, драйвер перевіряє автентифікацію на базу даних адміністратора.
Переконайтеся, що у вас є користувач у test
базі даних. Дивіться розділ 6 цього документа.
Увімкнути авт
Створіть додаткових користувачів у міру необхідності для розгортання.
База даних, де ви створюєте користувача (у цьому прикладі тестування) - це база даних автентифікації цього користувача. Хоча користувач отримав автентифікацію на цю базу даних, користувач може мати ролі в інших базах даних; тобто база даних аутентифікації користувача не обмежує привілеї користувача.
use test
db.createUser(
{
user: "myTester",
pwd: "xyz123",
roles: [ { role: "readWrite", db: "test" },
{ role: "read", db: "reporting" } ]
}
)