Ответ 1
Аутентификация запрещает вам выполнять действия в базе данных (как показывает ваш скриншот - вы даже не можете перечислять базы данных), это не предотвращает подключения - в конце концов, вы должны иметь возможность подключиться, чтобы иметь возможность аутентифицироваться.
Существует запрос для добавления тайм-аутов, но на данный момент это, по сути, означает, что сервер должен вести себя.
Стоит отметить, что до тех пор, пока вы не попытаетесь что-то сделать, это действительно не что иное, как просто подключение к порту с telnet
- текст, отображаемый в начале "подключение к:" и т.д., от клиента, а не сервер. Как только он пытается сделать что-либо, не прошедшее проверку подлинности, даже перечислит предупреждения сервера, возникает ошибка, потому что у нее недостаточно прав.
Если вы хотите заблокировать вещи с точки зрения подключения, единственной возможностью с точки зрения MongoDB является ограничение IP-адресов, которые он прослушивает (по умолчанию все), используя bindIp
. Используя 127.0.0.1
, можно было бы заблокировать его до локального использования (но тогда вы не сможете подключиться с удаленного хоста), что делает проблему репликации очень осторожной при выборе вашего связанного адреса.
За пределами MongoDB вы должны смотреть на блокировку вещей с точки зрения брандмауэра. В Linux это будет IPTables, ufw, hosts.allow/deny или что-то подобное. Брандмауэр Windows не является моей областью знаний, но я бы предположил, что вы тоже можете сделать подобное.