•   MongoDB教程
  • MongoDB快速入门
  • MongoDB历史
  • MongoDB特点
  • MongoDB数据库的优点
  • MongoDB安装配置(Windows)
  • MongoDB安装配置(Ubuntu)
  • MongoDB安装配置(RedHat/CentOS)
  • MongoDB数据建模
  • MongoDB创建数据库
  • MongoDB删除数据库
  • MongoDB创建集合
  • MongoDB删除集合
  • MongoDB数据类型
  • MongoDB插入文档
  • MongoDB查询文档
  • MongoDB更新文档
  • MongoDB删除文档
  • MongoDB投影(选择字段)
  • MongoDB限制记录数
  • MongoDB排序记录
  • MongoDB索引
  • MongoDB聚合
  • MongoDB复制
  • MongoDB分片
  • MongoDB备份与恢复
  • MongoDB部署
  • Java连接MongoDB操作
  • Python连接MongoDB操作
  • PHP连接MongoDB操作
  • Ruby连接MongoDB操作
  • 高级部分
  • MongoDB关联关系
  • MongoDB数据库引用
  • MongoDB覆盖查询
  • MongoDB分析查询
  • MongoDB原子操作
  • MongoDB高级索引
  • MongoDB索引限制
  • MongoDB ObjectId
  • MongoDB Map Reduce
  • MongoDB文本搜索
  • MongoDB正则表达式
  • MongoDB GridFS
  • MongoDB固定循环集合
  • MongoDB自动递增序列
  • 用户及安全
  • MongoDB安全检查表
  • MongoDB认证
  • MongoDB用户
  • MongoDB添加用户
  • MongoDB启用身份验证
  • MongoDB管理用户和角色
  • MongoDB更改用户密码和自定义数据

MongoDB安全检查表

本文介绍一些应实施的安全措施,以保护您的MongoDB安全。

1.启用访问控制和强制验证

启用访问控制并指定认证机制。可以使用默认的MongoDB身份验证机制或现有的外部框架。 认证要求所有客户端和服务器在连接到系统之前提供有效的凭据。 在群集部署中,为每个MongoDB服务器启用身份验证。

2.配置基于角色的访问控制

先创建用户管理员,然后创建其他用户。 为访问系统的每个人员和应用程序创建一个唯一的MongoDB用户。

创建定义一组用户需要的确切访问权限的角色。 遵循最低权限的原则。 然后创建用户并分配他们只需要执行其操作所需的角色。用户可以是个人或客户端应用程序。

3.加密通信

配置MongoDB为所有传入和传出连接使用TLS/SSL。 使用TLS/SSL加密MongoDB部署的mongod和mongos组件之间以及所有应用程序和MongoDB之间的通信。

4.加密和保护数据

从MongoDB Enterprise 3.2开始,WiredTiger存储引擎的本机加密在Rest中可以配置为加密存储层中的数据。

如果您没有使用WiredTiger的加密功能,则应使用文件系统,设备或物理加密在每台主机上对MongoDB数据进行加密。 使用文件系统权限保护MongoDB数据。MongoDB数据包括数据文件,配置文件,审核日志和密钥文件。

5.限制网络曝光

确保MongoDB在受信任的网络环境中运行,并限制MongoDB实例监听传入连接的接口。 只允许受信任的客户端访问MongoDB实例可用的网络接口和端口。

6.审计系统活动

跟踪数据库配置和数据的访问和更改。 MongoDB Enterprise包括一个系统审核工具,可以在MongoDB实例上记录系统事件(例如用户操作,连接事件)。 这些审核记录允许进行法证分析,并允许管理员验证正确的控制。

7.使用专用用户运行MongoDB

使用专用的操作系统用户帐户运行MongoDB进程。 确保帐户具有访问数据但没有不必要权限的权限而导致的安全问题。

8.使用安全配置选项运行MongoDB

MongoDB支持执行某些服务器端操作的JavaScript代码:mapReduce,group和$where。 如果不使用这些操作,请使用命令行上的--noscripting选项禁用服务器端脚本。

在生产部署中仅使用MongoDB线路协议。 不启用以下功能,所有这些都启用了Web服务器接口:net.http.enabled,net.http.JSONPEnabled和net.http.RESTInterfaceEnabled。保持这些禁用,除非向后兼容性要求。

注:自 MongoDB3.2 版本以来已弃用:MongoDB的HTTP接口

保持输入验证有效。 MongoDB默认通过wireObjectCheck设置启用输入验证。 这确保了mongod实例存储的所有文档都是有效的BSON。

9.请求安全技术实施指南(如适用)

“安全技术实施指南”(STIG)载有美国国防部内部署的安全准则。 MongoDB Inc.根据要求提供其STIG,用于需要的情况。 请索取副本以获取更多信息。


上一篇:MongoDB自动递增序列下一篇:MongoDB认证