MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Do serwera MongoDB nadal można uzyskać dostęp bez poświadczeń

Uwierzytelnianie uniemożliwia wykonywanie akcji na bazie danych (jak pokazuje zrzut ekranu - nie możesz nawet wyświetlić baz danych), nie uniemożliwia połączeń - w końcu musisz mieć możliwość połączenia, aby móc się uwierzytelnić.

Istnieje żądanie funkcji dodania limitów czasu, ale na razie jest to zasadniczo sposób, w jaki serwer ma się zachowywać.

Warto zauważyć, że dopóki nie spróbujesz czegoś zrobić, tak naprawdę nie różni się to od zwykłego połączenia z portem za pomocą telnet - tekst wyświetlany na początku "łączenie z:" itp. pochodzi od klienta, a nie z serwera. Gdy tylko spróbuje zrobić coś nieuwierzytelnionego, nawet wyświetlić listę ostrzeżeń serwera, zgłaszany jest błąd, ponieważ nie ma wystarczających uprawnień.

Jeśli chcesz zablokować rzeczy z perspektywy połączenia, jedyną opcją z perspektywy MongoDB jest ograniczenie adresów IP, na których nasłuchuje (domyślnie all) za pomocą bindIp opcja. Korzystanie z 127.0.0.1 zablokowałoby go na przykład do użytku lokalnego (ale wtedy nie mógłbyś połączyć się ze zdalnego hosta), co sprawia, że ​​replikacja jest problemem, więc zachowaj ostrożność podczas wybierania adresu powiązanego.

Poza MongoDB powinieneś spojrzeć na blokowanie rzeczy z perspektywy zapory. W Linuksie będzie to IPTables, ufw, hosts.allow/deny lub podobne. Zapora systemu Windows nie jest moim obszarem specjalizacji, ale wyobrażam sobie, że tam też możesz zrobić coś podobnego.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Jak dołączyć do dwóch dodatkowych kolekcji z warunkami

  2. Przegląd Atlasu MongoDB:część pierwsza

  3. Instalowanie MongoDB z Homebrew

  4. Agregacja Mongo :$grupa i $tablica projektu do zakwestionowania liczby

  5. Dopasuj do podłańcucha w agregacji mongodb