MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Сървърът на MongoDB все още може да бъде достъпен без идентификационни данни

Удостоверяването ви пречи да извършвате действия с базата данни (както показва екранната ви снимка - дори не можете да изброите бази данни), не пречи на връзките - в края на краищата трябва да можете да се свържете, за да можете да се удостоверите.

Има заявка за функция за добавяне на изчакване, но засега по същество това е начинът, по който сървърът трябва да се държи.

Струва си да се отбележи, че докато не се опитате да направите нещо, това наистина не е по-различно от просто свързване към порта с telnet - текстът, показан в началото "connecting to:" и т.н. е от клиента, а не от сървъра. Веднага щом се опита да направи нещо неудостоверено, дори да изброи предупрежденията на сървъра, се извежда грешка, защото няма достатъчно разрешения.

Ако искате да заключите нещата от гледна точка на връзката, единствената опция от гледна точка на MongoDB е да ограничите IP адресите, които слуша (по подразбиране е всичко) с помощта на bindIp опция. Използване на 127.0.0.1 ще го заключи за локално използване например (но тогава няма да можете да се свържете от отдалечен хост), което прави репликацията проблем, така че бъдете внимателни, когато избирате обвързания си адрес.

Извън MongoDB трябва да гледате на заключването на нещата от гледна точка на защитната стена. В Linux това би било IPTables, ufw, hosts.allow/deny или подобни. Защитната стена на Windows не е моята област на опит, но предполагам, че можете да направите подобно и там.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. 5 начина за избор на редове с максимална стойност за тяхната група в SQL

  2. MongoDB проекция на вложени масиви

  3. Файлова система само за четене при опит за mkdir /data/db на Mac

  4. Преобразуване на BSON в JSON документ в Java

  5. Не мога да инсталирам mongodb doctrine в symfony2 с composer