Неавторизованные пользователи MongoDB могут создавать базы данных

#mongodb

#mongodb

Вопрос:

У нас есть старое развертывание MongoDB 2.2.6, и недавно нас попросили ввести анонимную блокировку пользователей в БД. Я следовал инструкциям MongoDB и сначала создал пользователя для аутентификации и запустил mongod с

—auth

параметр.

Затем после входа в систему я не смог выполнить никаких команд, связанных с БД, за исключением

используйте << db >>

. Все было идеально. Но потом я попытался выдать

используйте <<< some_junk_db_name >>

без аутентификации, а затем выдается

db.some_collection.find()

команда. Mongodb правильно вызвал исключение, но позже, когда я проверил, эта база данных была там.

Это ошибка с MongoDB 2.2.6 или я что-то здесь упускаю?

Ответ №1:

Сообщается об ошибке с номером 2080, и тикет все еще не исправлен. В последнем комментарии от 17 мая 2013 года от участника MongoDB Inc. говорится, что ошибка все еще существует в версии MongoDB 2.4.

В версии 3.4 ошибка больше не воспроизводилась.

Комментарии:

1. Обратите внимание, что это создает фантомную (пустую) базу данных, а не выделяет хранилище для БД (но все равно является ошибкой). Имя базы данных не должно сохраняться после перезапуска mongod .