Из учебника по Mongo Java
MongoDB может работать в безопасном режиме, где доступ к базам данных контролируется с помощью аутентификации по имени и паролю. При запуске в этом режиме любое клиентское приложение должно предоставить имя и пароль перед выполнением каких-либо операций. В драйвере Java вы просто делаете следующее с подключенным объектом mongo:
boolean auth = db.authenticate(myUserName, myPassword);
Если имя и пароль действительны для базы данных, аутентификация будет истинной. Иначе это будет ложно. Вы должны просмотреть журнал MongoDB для получения дополнительной информации, если таковой имеется.
Большинство пользователей запускают MongoDB без аутентификации в доверенной среде.
Настройка аутентификации и безопасности
Аутентификация хранится в коллекции system.users каждой базы данных. Например, в базе данных projectx, projectx.system.users будет содержать информацию о пользователе.
Сначала необходимо настроить пользователя-администратора для всего процесса сервера БД. Этот пользователь хранится в специальной базе данных администратора.
Если в admin.system.users не настроены пользователи, можно получить доступ к базе данных из интерфейса localhost без аутентификации. Таким образом, с сервера, на котором работает база данных (и, следовательно, на локальном хосте), запустите оболочку базы данных и настройте пользователя с правами администратора:
$ ./mongo
> use admin
> db.addUser("theadmin", "anadminpassword")
Теперь у нас есть пользователь, созданный для администратора базы данных. Обратите внимание, что если мы ранее не проходили аутентификацию, мы теперь должны, если мы хотим выполнить дальнейшие операции, так как в admin.system.users есть пользователь.
> db.auth("theadmin", "anadminpassword")
Мы можем просматривать существующих пользователей для базы данных с помощью команды:
> db.system.users.find()
Теперь давайте настроим «обычного» пользователя для другой базы данных.
> use projectx
> db.addUser("joe", "passwordForJoe")
Наконец, давайте добавим пользователя только для чтения. (поддерживается только в 1.3.2 +)
> use projectx
> db.addUser("guest", "passwordForGuest", true)