保护 Azure DocumentDB 群集

Azure DocumentDB 是一项完全托管的 NoSQL 数据库服务,专为高性能、任务关键型应用程序而设计。 保护 Azure DocumentDB 群集对于保护数据和网络至关重要。

本文介绍最佳做法和关键功能,可帮助你防止、检测和响应数据库泄露。

网络安全

  • 使用专用终结点和防火墙规则限制访问:默认情况下,群集被锁定。 通过 Private Link 启用私有访问或使用基于 IP 的防火墙规则启用公共访问来控制哪些资源可以连接到群集。 有关详细信息,请参阅 如何启用专用访问 以及如何 启用公共访问

  • 根据需要组合公共和专用访问:可以在群集上配置公共和专用访问选项,并随时更改它们以满足安全要求。 有关详细信息,请参阅 网络配置选项

标识管理

  • 使用托管标识从其他 Azure 服务访问帐户:托管标识无需通过在 Microsoft Entra ID 中提供自动托管标识来管理凭据。 使用托管标识从其他 Azure 服务安全地访问 Azure DocumentDB,而无需在代码中嵌入凭据。 有关详细信息,请参阅 Azure 资源的托管标识

  • 使用 Azure 控制平面基于角色的访问控制来管理帐户数据库和集合:应用 Azure 基于角色的访问控制来定义用于管理 Azure DocumentDB 群集、数据库和集合的精细权限。 此控件可确保只有经过授权的用户或服务才能执行管理作。

  • 使用本机数据平面基于角色的访问控制在容器中查询、创建和访问项:实现基于数据平面角色的访问控制,以强制对 Azure DocumentDB 集合中的项进行查询、创建和访问的最小特权访问。 此控制措施有助于保障您的数据操作。 有关详细信息,请参阅 授予数据平面访问权限

  • 将用于数据和控制平面访问的 Azure 标识分开:对控制平面和数据平面作使用不同的 Azure 标识,以减少特权提升的风险,并确保更好的访问控制。 这种分离通过限制每个标识的范围来提高安全性。

  • 对管理群集使用强密码:管理群集要求具有至少 8 个字符的强密码,包括大写、小写、数字和非字母字符。 强密码可防止未经授权的访问。 有关详细信息,请参阅 如何管理用户

  • 创建辅助用户群集进行精细访问:为辅助用户群集分配读写或只读权限,以便对群集的数据库进行更精细的访问控制。 有关详细信息,请参阅 如何创建辅助用户

运输安全

  • 对所有连接强制实施传输层安全加密:所有与 Azure DocumentDB 群集的网络通信都使用传输层安全性(TLS)加密,最高为 1.3。 仅接受通过 MongoDB 客户端建立的连接,并且始终强制实施加密。

  • 使用 HTTPS 进行管理和监视:确保通过 HTTPS 执行所有管理和监视作以保护敏感信息。 有关详细信息,请参阅 如何监视诊断日志

备份和还原

  • 启用自动群集备份:在群集创建时启用备份,完全自动化,并且无法禁用。 可以将群集还原到 35 天保留期内的任何时间戳。 有关详细信息,请参阅 如何还原群集

监视和响应

  • 使用审核和活动日志监视攻击:使用审核日志记录和活动日志监视数据库的正常和异常活动,包括执行作的人员和时间。 有关详细信息,请参阅 如何监视诊断日志

  • 使用 Azure 支持响应攻击:如果怀疑攻击,请联系 Azure 支持部门,他们将启动一个五步事件响应过程,以恢复服务的安全和运营。