Недавно я настроил проект с использованием Symfony 5 с комплектом Doctrine MongoDB Bundle 4.3 (Doctrine ODM) и не смог вставить документы через ODM из-за ошибки аутентификации. Когда я пытаюсь это сделать, я получаю сообщение об ошибке Command Insert Requires Authentication.
Я создал пользователя для базы данных, которую будет использовать проект, и назначил этому пользователю роль dbAdmin. Согласно документам Symfony, а также документам проекта Doctrine ODM, правильный способ передачи учетных данных находится в параметре mongodb_server файла конфигурации services.yaml. Например:
# config/services.yaml
parameters:
mongodb_server: "mongodb://username:password@localhost:27017/?authSource=auth-db"
Я убедился, что у меня есть правильные учетные данные, включая auth-db, и я могу успешно войти в систему с этими учетными данными через оболочку Mongodb. Я вполне уверен, что имя пользователя и пароль вообще не передаются при попытке подключения к серверу Mongo и что я, вероятно, пропустил некоторые важные параметры конфигурации, но не вижу, где это будет основано на Symfony. документация.

Здесь действительно пропущен параметр конфигурации. В config/packages/doctrine_mongodb.yaml вы должны добавить параметры подключения имени пользователя, пароля и authSource. Пример:
# config/packages/doctrine_mongodb.yaml
doctrine_mongodb:
# ...
connections:
default:
server: "mongodb://localhost:27017"
options:
username: someuser
password: somepass
authSource: db_you_have_access_to
К сожалению, это сложно найти в документации Symfony, но это можно найти в документации Doctrine MongoDB Bundle.