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

Jak automatyzacja baz danych MongoDB poprawia bezpieczeństwo

Rosnąca liczba cyberataków na wdrożenia baz danych typu open source wskazuje na słabe praktyki administracyjne i operacyjne w branży.

Jeśli rok 2016 czegoś nas nauczył, to znaczenie dobrych praktyk operacyjnych i środków bezpieczeństwa we wdrożeniach baz danych typu open source. Przez kilka lat naukowcy ostrzegali przed publicznie ujawnionymi bazami danych – szacując je na dziesiątki tysięcy serwerów. Jeśli skala problemu nie była oczywista ani przerażająca, cóż, z pewnością jest teraz.

Ostatnio grupy ransomware usunęły ponad 10 000 baz danych MongoDB w ciągu zaledwie kilku dni. Trafiono również na inne otwarte bazy danych (ElasticSearch, Hadoop, CouchDB). W międzyczasie liczba ujawnionych baz danych wzrosła do około 100 000 instancji.

Co do tego doprowadziło? Bazy danych o otwartym kodzie źródłowym i ogólnie oprogramowanie o otwartym kodzie źródłowym napędzają znaczną część dzisiejszych usług online. Dzięki częstszemu wykorzystywaniu cykli rozwoju zwinnego chmura stała się domem dla różnorodnych aplikacji, które są szybko wdrażane. Wiele firm wykroczyło poza korzystanie z chmury do niekrytycznych funkcji i teraz polega na chmurze do przechowywania cennych danych. Oznacza to, że więcej baz danych jest wdrażanych w chmurach publicznych, w środowiskach bezpośrednio wystawionych na działanie Internetu.

W szczególności MongoDB jest bardzo popularny wśród programistów, ze względu na jego wygodę i celowość. Ale oto problem — szybkie uruchomienie środowiska programistycznego to nie to samo, co przygotowanie do produkcji na żywo. Obaj wymagają bardzo różnych poziomów wiedzy. Tysiące instancji baz danych nie były zabezpieczone i każdy mógł uzyskać dostęp do baz danych w zakresie odczytu i zapisu (w tym wszelkich danych wrażliwych) bez specjalnych narzędzi lub bez konieczności obchodzenia zabezpieczeń. To nie jest brak koncentracji ze strony kilku osób, które nas tu przywiodły, borykamy się z problemem, który jest bardziej rozpowszechniony, niż ktokolwiek mógłby sobie wyobrazić. Musimy zdać sobie sprawę, że trudno jest znaleźć kompromis między łatwością użytkowania, szybkością wdrażania i gotowością operacyjną/bezpieczną. Nasuwa się więc pytanie – jak możemy wspólnie wyjść poza tego typu problemy?

Gdybyśmy mogli wyszkolić każdą osobę, która wdraża MongoDB, na inżyniera wdrażania, mogłoby to pomóc. Przynajmniej będzie pewien poziom ochrony, aby nie każdy mógł wejść przez otwarte drzwi.

Operacje nie są nauką o rakietach, ale może nie być rozsądne oczekiwanie, że wszyscy programiści, którzy są głównymi użytkownikami MongoDB, zmienią się w pełnoprawnych inżynierów systemów/wdrożeń. Branża IT zmierza w kierunku szybszych, szczuplejszych wdrożeń i wdrażania usług. Środek między łatwością użytkowania, szybkością wdrażania i dobrymi praktykami operacyjnymi może wydawać się jeszcze odleglejszy. Automatyzacja może być właśnie tym, co pomoże nam znaleźć ten środek.

Kilkadziesiąt — Zostań administratorem baz danych MongoDB — wprowadzenie MongoDB do produkcjiDowiedz się, co trzeba wiedzieć, aby wdrażać, monitorować, zarządzać i skalować MongoDB. Pobierz za darmo

Konfiguracje baz danych odpowiednie do produkcji wydają się być nieco bardziej złożone, ale po zaprojektowaniu można je wielokrotnie powielać z minimalną zmiennością.

Automatyzację można zastosować do początkowego udostępniania i konfiguracji, a także do bieżących poprawek, tworzenia kopii zapasowych, wykrywania anomalii i innych czynności konserwacyjnych. Jest to podstawa naszej własnej platformy automatyzacji dla MongoDB, ClusterControl. Dobrze wdrożony i zarządzany system może złagodzić ryzyko operacyjne i z pewnością uchroniłby te tysiące baz danych przed zhakowaniem.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB $mul

  2. pymongo.errors.CursorNotFound:identyfikator kursora '...' niepoprawny na serwerze

  3. mongodb:wstaw, jeśli nie istnieje

  4. Wykonaj skrypt powłoki mongodb za pomocą sterownika C#

  5. mongo:zwrot nie jest równy count()