Cấu hình MongoDB bảo mật
Chúng tôi sẽ chỉ cho bạn năm tùy chọn cấu hình, cũng như các tùy chọn khác bắt buộc phải đi cùng với chúng, để triển khai MongoDB của bạn, giúp giữ an toàn cho dữ liệu của bạn trong khi vẫn cho phép người dùng và ứng dụng có quyền truy cập ít đặc quyền nhất sử dụng bằng các phương pháp xác thực hiện đại, . Các tùy chọn cấu hình này nằm trong các lĩnh vực bảo mật sau. xác thực, ủy quyền, mã hóa và kiểm tra Show Tổng quan về bảo mật MongoDBBảo mật MongoDB bao gồm bốn lĩnh vực trọng tâm chính, xác thực (ai), ủy quyền (cái gì), mã hóa (như thế nào) và kiểm tra (khi nào). Phần này nhằm cung cấp cho bạn tổng quan cấp cao về các lĩnh vực trọng tâm bảo mật khác nhau cho MongoDB Xác thực là cách bạn xác định chính mình với MongoDB. Có nhiều cách để xác thực bản thân với cơ sở dữ liệu MongoDB, từ tên người dùng và mật khẩu tiêu chuẩn bằng giao thức SCRAM (Cơ chế xác thực phản hồi thử thách muối), xác thực dựa trên chứng chỉ để liên kết với một giải pháp quản lý danh tính như LDAP (Giao thức truy cập thư mục nhẹ), Ủy quyền là cách MongoDB xác định bạn, với tư cách là người dùng được xác thực, có thể làm gì. MongoDB hỗ trợ ủy quyền bằng phương pháp RBAC (Kiểm soát truy cập dựa trên vai trò). MongoDB cho phép bạn tạo các vai trò là nhóm các đặc quyền mà bất kỳ người dùng nào được cấp vai trò đó đều có thể thực hiện. MongoDB đi kèm với một bộ vai trò tích hợp toàn diện cũng như mang đến cho bạn sự linh hoạt để tạo các vai trò tùy chỉnh của riêng bạn. Tất nhiên, các vai trò phổ biến như chỉ đọc và ghi, nhưng cũng có những vai trò hữu ích để theo dõi bất kỳ nút nào, sao lưu và khôi phục cũng như quản trị người dùng. Ngoài ra, MongoDB cũng hỗ trợ ủy quyền LDAP cho phép bạn đồng bộ hóa các nhóm LDAP với các vai trò để đơn giản hóa việc quản lý Mã hóa là cách dữ liệu của bạn có thể được mã hóa khi đang bay (Vận chuyển) và khi ở trên đĩa (Đang nghỉ ngơi). Mã hóa vận chuyển giữ cho dữ liệu của bạn được mã hóa trong khi dữ liệu được gửi đến và từ ứng dụng của bạn đến MongoDB. MongoDB hỗ trợ mã hóa TLS/SSL cho dữ liệu trong chuyến bay bằng cách sử dụng x. 509 Chứng chỉ và đây là ví dụ về thiết lập Mã hóa truyền tải. Mã hóa ở phần còn lại giữ cho dữ liệu của bạn an toàn khỏi một bên bên ngoài có thể nhận được bản sao các tệp dữ liệu của bạn vì chúng sẽ hoàn toàn không thể đọc được ở dạng mã hóa của chúng Quá trình kiểm tra cho bạn biết thời điểm người dùng kết nối, thời điểm thay đổi đặc quyền, các sự kiện quản trị khác nhau, người dùng cố gắng thực hiện điều gì đó mà họ không nên làm, v.v. dựa trên tiêu chí bộ lọc bạn có thể đặt. Điều này hữu ích trong các tình huống tuân thủ khi bạn phải có khả năng hiển thị ai đã ở trên cơ sở dữ liệu vào thời điểm nào, họ có đặc quyền gì, khi nào đặc quyền được thay đổi, v.v. Mẹo. Đừng nhầm lẫn giữa việc kiểm tra như một cách để theo dõi các hoạt động của người dùng trong thời gian thực, mà hãy coi đó là một cách để tạo một tệp nhật ký chỉ nối thêm, chống giả mạo mà bạn có thể quay lại để hiển thị những gì đang xảy ra và Mẹo. Kiểm tra là một hoạt động tốn kém và sẽ ảnh hưởng đến hiệu suất, hãy đảm bảo rằng bạn đang nhận được giá trị từ nó và nhóm Tuân thủ CNTT của bạn có thể chủ động sử dụng nó trước khi thiết lập Tùy chọn cấu hìnhVì vậy, trong khi biết các lĩnh vực quan trọng của Bảo mật MongoDB là rất tốt, làm cách nào để chúng tôi đảm bảo chúng được bật hoặc thiết lập chính xác? . Chúng tôi cũng sẽ liệt kê một số tùy chọn cấu hình bắt buộc sẽ hoạt động cùng với 5 tùy chọn cấu hình quan trọng nhất của chúng tôi để giữ an toàn cho dữ liệu của bạn. Chúng tôi sẽ chia các tùy chọn cấu hình này thành các khu vực trọng tâm bảo mật của chúng MongoDB sử dụng tệp cấu hình ở định dạng tệp YAML. Tệp cấu hình thường được tìm thấy ở phần sau, tùy thuộc vào Hệ điều hành của bạn FILE CẤU HÌNH MẶC ĐỊNH
xác thựcTùy chọn cấu hình đầu tiên của chúng tôi, , có lẽ là tùy chọn quan trọng nhất để kích hoạt bảo mật trên Triển khai MongoDB của bạn. Tùy chọn cấu hình này không chỉ thực thi MongoDB bằng cách sử dụng xác thực để người dùng ít nhất phải đăng nhập bằng thông tin đăng nhập mà còn đồng thời tham gia kiểm soát truy cập dựa trên vai trò giới hạn những gì người dùng có thể làm Vỏ bọc1 2 bảo mật. ủy quyền. đã bật
Mẹo. Nếu bạn thiết lập tùy chọn cấu hình này trước khi tạo người dùng trong MongoDB, bạn có thể sử dụng tùy chọn này để tạo người dùng đầu tiên của mình. Điều này đặc biệt hữu ích trong các trường hợp tự động hóa hoặc các tình huống khác mà bạn muốn tất cả các tùy chọn cấu hình của mình được định cấu hình chỉ một lần, sau đó truy cập và thêm người dùng Có một số tùy chọn cấu hình xác thực khác được yêu cầu để triển khai MongoDB của bạn
ủy quyềnBảo vệ. tùy chọn cấu hình ủy quyền đã bật xác thực cũng là tùy chọn cấu hình quan trọng nhất để thiết lập ủy quyền vì nó cũng cung cấp cho chúng tôi các vai trò cho phép chúng tôi ủy quyền cho người dùng có các quyền cụ thể. Mặc dù có một số tùy chọn cấu hình ủy quyền cho hệ thống ủy quyền sẵn có, nhưng hầu hết các tùy chọn đều hữu ích để tích hợp LDAP hoặc các cơ chế xác thực bên ngoài khác với vai trò của bạn. Đọc thêm về cách thiết lập Ủy quyền LDAP, cũng như một bài đăng trên blog tuyệt vời thảo luận về cách thiết lập Ủy quyền LDAP mã hóaMã hóa truyền tải đảm bảo rằng dữ liệu của bạn được mã hóa giữa ứng dụng của bạn và cơ sở dữ liệu, nó cũng có thể được sử dụng để mã hóa dữ liệu giữa các thành viên của bộ bản sao và cụm phân đoạn. Tùy chọn cấu hình quan trọng nhất ở đây là. Tùy chọn cấu hình này là mới trong MongoDB 4. 2, trước MongoDB 4. 2, tùy chọn cấu hình này được đặt tên. Tùy chọn cấu hình này quyết định mức độ nghiêm ngặt mà bạn muốn thực thi mã hóa TLS. Các tùy chọn cho tùy chọn cấu hình này là
1 2 3 mạng. tls. chế độ. yêu cầu TL
Các tùy chọn cấu hình cần thiết bổ sung cho mã hóa vận chuyển là
đảm bảo rằng dữ liệu của bạn không thể bị đọc bởi người đánh cắp tệp dữ liệu của cơ sở dữ liệu của bạn trừ khi họ cũng đánh cắp khóa. Điều này ngăn ai đó đọc các tệp dữ liệu MongoDB của bạn ở cấp hệ thống tệp. Ở đây tùy chọn cấu hình quan trọng nhất là Vỏ bọc1 2 bảo mật. bật mã hóa. đúng Các tùy chọn cấu hình cần thiết bổ sung cho Data At Rest Encryption là
Máy chủ Percona cho các tùy chọn cấu hình cụ thể của MongoDB Máy chủ Percona dành cho MongoDB được tích hợp với HashiCorp Vault để quản lý bí mật cho Mã hóa dữ liệu của bạn khi nghỉ ngơi. Đọc và Sử dụng Vault để lưu trữ Khóa chính cho Mã hóa dữ liệu ở trạng thái nghỉ trên máy chủ Percona cho MongoDB Các tùy chọn cấu hình quan trọng cho Tích hợp Vault là
Dữ liệu cụ thể của doanh nghiệp MongoDB khi nghỉ tùy chọn cấu hình mã hóa Hiện tại, MongoDB Enterprise không có Vault Integration for Encryption ngoại trừ trong MongoDB Atlas. MongoDB Enterprise hỗ trợ giao thức KMIP và bạn có thể tích hợp MongoDB với bất kỳ công cụ Quản lý khóa nào sử dụng giao thức KMIP. Tài liệu có thể được tìm thấy Các tùy chọn cấu hình quan trọng để hỗ trợ Quản lý khóa thông qua giao thức KMIP là
kiểm toánKiểm tra cho phép các nhóm Tuân thủ Bảo mật CNTT theo dõi và ghi nhật ký các hoạt động chạy trên cơ sở dữ liệu MongoDB. Có một số tùy chọn cấu hình kiểm tra quan trọng cho MongoDB, là tùy chọn quan trọng nhất vì nó quyết định chính xác những gì bạn đang thiết lập trong nhật ký kiểm tra của mình 1 2 Nhật ký kiểm tra. bộ lọc. { <trường1>< . : <biểu thức1>, . . . }
Ví dụ: nếu chúng tôi chỉ muốn tạo mục nhập nhật ký kiểm tra mỗi khi ai đó tạo hoặc xóa bộ sưu tập, chúng tôi sẽ đặt Nhật ký kiểm toán. Lọc như vậy Vỏ bọc1 2 Nhật ký kiểm tra. bộ lọc. { loại. { $trong. [ "createCollection", "dropCollection" ] } }
Nếu chúng tôi muốn kiểm tra mọi người với một vai trò cụ thể, chúng tôi có thể đặt bộ lọc kiểm toán như vậy 1 2 Nhật ký kiểm tra. bộ lọc. { vai trò. { vai trò. "readWrite", db. "appdb" } }
Các tùy chọn cấu hình cần thiết bổ sung để kiểm tra là
Cuối cùng, mặc dù việc kiểm tra rất quan trọng để theo dõi và ghi nhật ký hoạt động trong cơ sở dữ liệu của bạn, bao gồm cả việc truy cập PII hoặc dữ liệu nhạy cảm khác, nhưng bạn không muốn để lộ PII trong quá trình kiểm tra hoặc các tệp nhật ký khác của mình. Để thực hiện điều này, bạn phải thiết lập chỉnh sửa nhật ký trên Bộ bản sao MongoDB hoặc Cụm phân đoạn. Tùy chọn cấu hình quan trọng để chỉnh sửa nhật ký là. Các giá trị được chấp nhận cho tùy chọn cấu hình này là đúng và sai Vỏ bọc1 2 bảo mật. xóa lại Dữ liệu ClientLog. đúng Bản tóm tắtTrong bài đăng trên blog này, chúng tôi đã xem qua năm tùy chọn cấu hình MongoDB quan trọng để đảm bảo bạn có một triển khai MongoDB an toàn hơn cũng như một số tùy chọn cấu hình khác giúp năm tùy chọn này giữ an toàn cho dữ liệu của bạn. Chúng tôi hy vọng rằng các tùy chọn cấu hình này sẽ giúp bạn xây dựng các triển khai MongoDB an toàn hơn và tránh trở thành một thống kê vi phạm dữ liệu. Cảm ơn vì đã đọc Tài nguyên bổ sungNăm vấn đề bảo mật hàng đầu của MongoDB Bảo mật MongoDB Webinar Tài nguyên mới nhất của chúng tôi, Sử dụng phần mềm nguồn mở để đảm bảo tính bảo mật của cơ sở dữ liệu MongoDB của bạn, tài liệu cách triển khai triển khai MongoDB an toàn, cấp doanh nghiệp mà không phải lo lắng về phí giấy phép, mang lại cho các tổ chức sự linh hoạt để triển khai các mô hình nhất quán trên toàn bộ cơ sở hạ tầng của họ Làm cách nào để thiết lập bảo mật MongoDB?Các phương pháp hay nhất về bảo mật MongoDB . Mã hóa dữ liệu của bạn khi nghỉ ngơi. . Bật kiểm soát truy cập và Sử dụng kiểm soát truy cập dựa trên vai trò (và nguyên tắc đặc quyền tối thiểu). Kiểm tra hành động của người dùng. . Xác thực người dùng. . Mã hóa lưu lượng mạng. . Sao lưu dữ liệu của bạn. . Hoàn thành cập nhật thường xuyên. . Giám sát mạng của bạn Bảo mật mặc định của MongoDB là gì?Mã hóa dữ liệu khi truyền—tất cả dữ liệu khi truyền trong MongoDB được mã hóa bằng cách sử dụng SSL/TLS theo mặc định.
Tính bảo mật của cơ sở dữ liệu MongoDB là gì?Mã hóa đầu cuối
. Mã hóa cho dữ liệu ở trạng thái lưu trữ được tự động sử dụng khối lượng lưu trữ được mã hóa.
Tệp cấu hình MongoDB ở đâu?Tệp cấu hình MongoDB được đặt tại /opt/bitnami/mongodb/conf/mongodb. conf . |