保护 Azure Cosmos DB for NoSQL 帐户

Azure Cosmos DB for NoSQL 是一种多区域分布式多模型数据库服务,专为任务关键型应用程序而设计。 虽然 Azure Cosmos DB 提供内置安全功能来保护数据,但必须遵循最佳做法来进一步增强帐户、数据和网络配置的安全性。

本文提供有关如何最好地保护 Azure Cosmos DB for NoSQL 部署的指导。

网络安全

  • 禁用公用网络访问,仅使用专用终结点:部署 Azure Cosmos DB for NoSQL,并配置为仅限制网络访问到 Azure 部署的虚拟网络。 该帐户通过配置的特定子网公开。 然后,为整个帐户禁用公用网络访问,并为连接到该帐户的服务专门使用专用终结点。 有关详细信息,请参阅 配置虚拟网络访问配置来自专用终结点的访问

  • 为网络隔离启用网络安全外围:使用网络安全外围(NSP)通过定义网络边界并将其与公共 Internet 访问隔离来限制对 Azure Cosmos DB 帐户的访问。 有关详细信息,请参阅 配置网络安全外围

标识管理

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

  • 使用 Azure 控制平面基于角色的访问控制来管理帐户数据库和容器:应用 Azure 基于角色的访问控制来定义用于管理 Azure Cosmos DB 帐户、数据库和容器的精细权限。 此控件可确保只有经过授权的用户或服务才能执行管理作。 有关详细信息,请参阅授予控制平面访问权限

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

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

运输安全

  • 使用并强制实施 TLS 1.3 实现传输安全性:强制传输层安全性 (TLS) 1.3 以使用最新的加密协议保护传输中的数据,确保更强加密并提高性能。 有关详细信息,请参阅 最低 TLS 强制要求

数据加密

  • 使用服务管理的密钥或客户管理的密钥(CMKs)加密静态数据或动态数据:通过在静态和传输中加密敏感数据来保护敏感数据。 为简单起见,使用服务管理的密钥或客户管理的密钥可以更好地控制加密。 有关详细信息,请参阅配置客户管理的密钥

  • 使用 Always Encrypted 保护客户端加密数据:Always Encrypted 可确保在发送到 Azure Cosmos DB 之前在客户端加密敏感数据,从而提供额外的安全层。 有关详细信息,请参阅 Always Encrypted

备份和还原

  • 启用本机连续备份和还原:通过启用连续备份来保护数据,这样就可以将 Azure Cosmos DB 帐户还原到保留期内的任何时间点。 有关详细信息,请参阅 连续备份和还原

  • 测试备份和恢复过程:若要验证备份过程的有效性,请定期测试数据库、容器和项的还原。 有关详细信息,请参阅 还原容器或数据库

注意:本文包含使用 AI 创建的内容。 了解详细信息