Защитите учетную запись NoSQL в Azure Cosmos DB

Azure Cosmos DB для NoSQL — это глобально распределенная служба баз данных с несколькими моделями, предназначенная для критически важных приложений. Хотя Azure Cosmos DB предоставляет встроенные функции безопасности для защиты данных, важно следовать рекомендациям, чтобы повысить безопасность учетной записи, данных и сетевых конфигураций.

В этой статье приводятся рекомендации по обеспечению безопасности Azure Cosmos DB для развертывания NoSQL.

Сетевая безопасность

  • Отключить доступ к общедоступной сети и использовать только частные конечные точки. Разверните Azure Cosmos DB для NoSQL с конфигурацией, которая ограничивает сетевой доступ только к виртуальной сети, развернутой в Azure. Учетная запись предоставляется через определенную подсеть, настроенную вами. Затем отключите доступ к общедоступной сети для всей учетной записи и используйте частные конечные точки исключительно для служб, которые подключаются к учетной записи. Дополнительные сведения см. в статье о настройке доступа к виртуальной сети и настройке доступа из частных конечных точек.

  • Включите периметр безопасности сети для сетевой изоляции: Используйте Периметр безопасности сети (NSP), чтобы ограничить доступ к вашей учетной записи Azure Cosmos DB, определив границы сети и изолировав её от публичного доступа к Интернету. Дополнительные сведения см. в разделе "Настройка периметра безопасности сети".

Управление идентичностью

  • Использовать управляемые удостоверения для доступа к учетной записи из других служб Azure. Управляемые удостоверения устраняют необходимость управления учетными данными, предоставляя автоматически управляемое удостоверение в Microsoft Entra ID. Используйте управляемые удостоверения для безопасного доступа к Azure Cosmos DB из других служб Azure без внедрения учетных данных в код. Дополнительные сведения см. в разделе Управляемые удостоверения для ресурсов Azure.

  • Используйте управление доступом на основе ролей плоскости управления Azure для управления учетными записями, базами данных и контейнерами: Примените контроль доступа на основе ролей Azure для определения подробных разрешений на управление учетными записями Azure Cosmos DB, базами данных и контейнерами. Этот элемент управления гарантирует, что только авторизованные пользователи или службы могут выполнять административные операции. Дополнительные сведения см. в разделе "Предоставление доступа к плоскости управления".

  • Использовать собственное управление доступом на основе ролей уровня данных для запроса, создания и доступа к элементам в контейнерах. Реализуйте управление доступом на основе ролей уровня данных для обеспечения наименьшего привилегированного доступа при запросах, создании и доступе к элементам в контейнерах Azure Cosmos DB. Этот элемент управления помогает защитить операции с данными. Дополнительные сведения см. в разделе Предоставление доступа к плоскости данных.

  • Отдельные идентификаторы Azure, используемые для доступа к плоскости данных и контрольной плоскости. Используйте разные идентификаторы Azure для операций на контрольной и плоскости данных, чтобы снизить риск эскалации привилегий и обеспечить более эффективное управление доступом. Это разделение повышает безопасность путем ограничения области каждого удостоверения.

  • Регулярно поворачивайте ключи доступа при использовании проверки подлинности на основе ключей: если вы по-прежнему используете проверку подлинности на основе ключей, смените первичные и вторичные ключи по регулярному расписанию. Используйте вторичный ключ во время смены первичного ключа, чтобы избежать простоя. Инструкции по смене ключей см. в разделе "Смена ключей учетной записи". При переходе на проверку подлинности Microsoft Entra ID см. статью Подключение с использованием управления доступом на основе ролей.

Безопасность транспорта

  • Используйте и примените TLS 1.3 для обеспечения безопасности транспорта. Примените протокол TLS 1.3 для защиты передаваемых данных с помощью последних криптографических протоколов, обеспечивая более надежное шифрование и улучшенную производительность. Дополнительные сведения см. в разделе "Минимальное применение TLS".

Шифрование данных

  • Шифрование данных в состоянии покоя или в движении с помощью ключей, управляемых службой, или ключей, управляемых клиентом (CMKs): защита конфиденциальных данных путем шифрования в состоянии покоя и при передаче. Используйте управляемые службой ключи для простоты или ключей, управляемых клиентом, для повышения контроля над шифрованием. Дополнительные сведения см. в разделе "Настройка ключей, управляемых клиентом".

  • Use Always Encrypted для защиты данных с помощью шифрования на стороне клиента: Always Encrypted гарантирует, что конфиденциальные данные шифруются на стороне клиента перед отправкой в Azure Cosmos DB, обеспечивая дополнительный уровень безопасности. Дополнительные сведения см. в разделе Постоянное шифрование.

Резервное копирование и восстановление

  • Enable native backup and restore: защита данных путем включения непрерывного резервного копирования, что позволяет восстановить учетную запись Azure Cosmos DB в любой момент времени в течение периода хранения. Дополнительные сведения см. в разделе "Непрерывное резервное копирование и восстановление".

  • Тестирование процедур резервного копирования и восстановления. Чтобы проверить эффективность процессов резервного копирования, регулярно проверяйте восстановление баз данных, контейнеров и элементов. Дополнительные сведения см. в разделе "Восстановление контейнера или базы данных".