MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Máy chủ MongoDB vẫn có thể được truy cập mà không cần thông tin đăng nhập

Xác thực ngăn bạn thực hiện các hành động trên cơ sở dữ liệu (như ảnh chụp màn hình của bạn hiển thị - bạn thậm chí không thể liệt kê cơ sở dữ liệu), nó không ngăn các kết nối - xét cho cùng, bạn phải có khả năng kết nối để có thể xác thực.

Có một yêu cầu tính năng để thêm thời gian chờ, nhưng về cơ bản đây là cách máy chủ hoạt động.

Cần lưu ý rằng cho đến khi bạn cố gắng làm điều gì đó, điều này thực sự không khác gì chỉ kết nối với cổng bằng telnet - văn bản hiển thị khi bắt đầu "kết nối với:", v.v. là từ máy khách, không phải máy chủ. Ngay sau khi nó cố gắng thực hiện bất kỳ điều gì chưa được xác thực, thậm chí liệt kê các cảnh báo của máy chủ, một lỗi sẽ xuất hiện vì nó không có đủ quyền.

Nếu bạn muốn khóa mọi thứ từ góc độ kết nối, tùy chọn duy nhất từ ​​góc độ MongoDB là hạn chế các địa chỉ IP mà nó lắng nghe (mặc định là tất cả) bằng cách sử dụng bindIp lựa chọn. Sử dụng 127.0.0.1 chẳng hạn như sẽ khóa nó ở chế độ sử dụng cục bộ (nhưng sau đó bạn sẽ không thể kết nối từ máy chủ từ xa), điều này khiến việc sao chép trở thành một vấn đề, vì vậy hãy cẩn thận khi chọn địa chỉ liên kết của bạn.

Bên ngoài MongoDB, bạn nên xem xét việc khóa mọi thứ từ góc độ tường lửa. Trên Linux, đây sẽ là IPTables, ufw, hosts.allow / allow hoặc tương tự. Tường lửa Windows không phải là lĩnh vực chuyên môn của tôi, nhưng tôi có thể tưởng tượng bạn cũng có thể làm điều tương tự ở đó.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Docker:thay đổi thư mục nơi lưu trữ khối lượng docker

  2. Làm cách nào để tạo một kết xuất MongoDB cho cơ sở dữ liệu của tôi?

  3. Xu hướng NoSQL - MongoDB, Cassandra, CouchDB &Riak

  4. Lỗi truyền JSON.NET khi tuần tự hóa Mongo ObjectId

  5. Mongodb đứng ở đâu trong định lý CAP?