Рекомендации по безопасности в Azure Cosmos DB
Ответственность за безопасность данных лежит как на клиенте, так и на поставщике базы данных. В зависимости от выбранного поставщика базы данных доля ответственности клиента может меняться. Если вы выберете локальное решение, необходимо предоставить все, от защиты конечных точек до физической безопасности оборудования, что не является простой задачей. Если вы выбираете платформу как поставщик облачных баз данных PaaS, например Azure Cosmos DB, ваша область проблем значительно сокращается.
Дополнительные сведения см. в разделе о общей ответственности в облаке.
Контрольный список
Мы рекомендуем сравнить системы баз данных с помощью следующего контрольного списка требований:
- Параметры безопасности сети и брандмауэра
- Аутентификация пользователей и детальные пользовательские элементы управления
- Возможность глобальной репликации данных в случае регионального сбоя
- Возможность отработки отказа из одного центра обработки данных в другой
- Локальная репликация данных в центре обработки данных
- Автоматическая архивация данных
- Восстановление удаленных данных из архива
- Возможность защиты и изоляции конфиденциальных данных
- Мониторинг атак
- Встроенные ответы на атаки
- Возможность защитить данные в пределах геозоны в соответствии с ограничениями, установленными для управления данными
- Физическая защита серверов в защищенных центрах обработки данных
- Сертификация
Хотя это может показаться очевидным, недавние крупномасштабные нарушения базы данных напоминают нам о простой, но критической важности следующих требований:
- На серверах устанавливаются исправления и поддерживается их актуальность
- HTTPS по умолчанию/шифрование TLS
- Административные учетные записи с надежными паролями
Каким образом Azure Cosmos DB обеспечивает защиту базы данных?
Azure Cosmos DB защищает базу данных по умолчанию с помощью многих функций, встроенных в службу и Azure.
Требование по безопасности | Подход к обеспечению безопасности Azure Cosmos DB |
---|---|
Безопасность сети | Использование брандмауэра для IP-адресов — первый уровень защиты базы данных. Azure Cosmos DB поддерживает управление доступом на основе политик на основе IP-адресов для поддержки входящего брандмауэра. Управление доступом на основе IP-адресов аналогично правилам брандмауэра, используемым традиционными системами баз данных. Однако они расширяются, чтобы учетная запись базы данных Azure Cosmos DB была доступна только из утвержденного набора компьютеров или облачных служб. Дополнительные сведения см. в статье о поддержке брандмауэра Azure Cosmos DB. С помощью Azure Cosmos DB можно включить определенный IP-адрес (168.61.48.0), диапазон IP-адресов (168.61.48.0/8) и сочетания IP-адресов и диапазонов. Azure Cosmos DB блокирует все запросы, исходящие из компьютеров за пределами этого разрешенного списка. Затем запросы из утвержденных компьютеров и облачных служб должны пройти процесс аутентификации, чтобы получить право на контроль доступа к ресурсам. Теги службы виртуальной сети можно использовать для обеспечения сетевой изоляции и защиты ресурсов Azure Cosmos DB из общего Интернета. Теги служб можно использовать вместо определенных IP-адресов при создании правил безопасности. Указав имя тега службы (например, AzureCosmosDB ) в соответствующем поле источника или назначения правила, можно разрешить или запретить трафик соответствующей службы. |
Авторизация | Azure Cosmos DB использует для авторизации код проверки подлинности сообщения на основе хэша (HMAC). Каждый запрос хэшируется с помощью ключа секретной учетной записи, а последующий хэш в кодировке Base-64 отправляется с каждым вызовом в Azure Cosmos DB. Чтобы проверить запрос, Azure Cosmos DB использует правильный секретный ключ и свойства для создания хэша, а затем сравнивает значение с значением в запросе. Если совпадают два значения, операция успешно авторизована, и запрос обрабатывается. Если они не соответствуют, возникает сбой авторизации и запрос отклоняется. Вы можете использовать первичный ключ, предоставляя точный доступ к ресурсу, например документу. Дополнительные сведения см. в статье "Безопасный доступ к ресурсам Azure Cosmos DB". |
Пользователи и разрешения | Используя первичный ключ для учетной записи, можно создавать ресурсы пользователей и ресурсы разрешений для каждой базы данных. Маркер ресурса связан с разрешением в базе данных и определяет, имеет ли пользователь доступ (на чтение и запись, только на чтение или без доступа) к ресурсу приложения в базе данных. Ресурсы приложения включают контейнеры, документы, вложения, хранимые процедуры, триггеры и определяемые пользователем функции (UDFs). Затем маркер ресурса используется во время аутентификации, чтобы предоставить или запретить доступ к ресурсу. Дополнительные сведения см. в статье "Безопасный доступ к ресурсам Azure Cosmos DB". |
Интеграция Active Directory (управление доступом на основе ролей Azure) | Вы также можете предоставить или ограничить доступ к учетной записи Azure Cosmos DB, базе данных, контейнерам и предложениям (пропускная способность) с помощью управления доступом (IAM) в портал Azure. IAM обеспечивает управление доступом на основе ролей и интегрируется с Active Directory. Для частных пользователей и групп можно использовать встроенные роли или пользовательские роли. |
Глобальная репликация | Azure Cosmos DB предлагает готовое глобальное распределение, которое позволяет реплицировать данные в любой из мировых центров обработки данных Azure в готовый способ. Глобальная репликация позволяет осуществлять глобальное масштабирование, обеспечивая низкую задержку при обращении к данным по всему миру. В контексте безопасности глобальная репликация обеспечивает защиту данных от региональных сбоев. Дополнительные сведения см. в статье "Глобальное распространение данных". |
Отработка отказа между регионами | Если вы реплицируете данные в нескольких центрах обработки данных, Azure Cosmos DB автоматически выполняет перекат операций, если региональный центр обработки данных переходит в автономный режим. Вы можете создать приоритетный список регионов отработки отказа с помощью регионов, в которых реплицируются данные. Дополнительные сведения см. в статье "Региональные отработки отказа" в Azure Cosmos DB. |
Локальная репликация | Даже в одном центре обработки данных Azure Cosmos DB автоматически реплицирует данные для обеспечения высокой доступности, предоставляя вам выбор уровней согласованности. Эта репликация гарантирует соглашение об уровне обслуживания на уровне доступности 99,99 % для всех учетных записей отдельных регионов и всех учетных записей с несколькими регионами с расслабленной согласованностей и доступностью 99,999% для всех учетных записей базы данных с несколькими регионами. |
Автоматическая оперативная архивация | Базы данных Azure Cosmos DB создаются регулярно и хранятся в геоизбыточное хранилище. Дополнительные сведения см. в статье "Автоматическое оперативное резервное копирование и восстановление" с помощью Azure Cosmos DB. |
Восстановление удаленных данных | Автоматические резервные копии в сети можно использовать для случайного удаления данных до 30 дней после события. Дополнительные сведения см. в статье "Автоматическое оперативное резервное копирование и восстановление" с помощью Azure Cosmos DB. |
Защита и изолирование конфиденциальных данных | Ко всем данным, перечисленным в разделе "Новые возможности", теперь применяется шифрование неактивных данных. Персональные данные и другие конфиденциальные данные могут быть изолированы для определенных контейнеров и чтения и записи, или доступ только для чтения может быть ограничен определенными пользователями. |
Мониторинг атак | С помощью ведения журнала аудита и журналов действий можно отслеживать учетную запись на наличие аномальной активности. Вы можете просмотреть, какие операции были выполнены в ресурсах. Эти данные включают, кто инициировал операцию, когда произошла операция, состояние операции и многое другое. |
Реагирование на атаки | После обращения к поддержка Azure сообщить о потенциальной атаке начинается пятишаговый процесс реагирования на инциденты. Целью является восстановление нормальной безопасности и операций службы. Процесс восстанавливает службы как можно быстрее после обнаружения проблемы и запуска исследования. Дополнительные сведения см . в ответе на безопасность Microsoft Azure в облаке. |
Установка геозон | Azure Cosmos DB обеспечивает управление данными для национальных регионов (например, Германии, Китая и правительства США). |
Защищенное оборудование | Данные в Azure Cosmos DB хранятся на твердотельных дисках в защищенных центрах обработки данных Azure. Дополнительные сведения см. в глобальных центрах обработки данных Майкрософт. |
Шифрование HTTPS и TLS | Все подключения к Azure Cosmos DB поддерживают протокол HTTPS. Azure Cosmos DB поддерживает уровни TLS до 1.2 (включено). На стороне сервера можно применить минимальный уровень TLS. Для этого ознакомьтесь с руководством по самостоятельному использованию минимальной версии TLS в Azure Cosmos DB. |
Шифрование при хранении | Все данные, хранящиеся в Azure Cosmos DB, шифруются неактивных данных. Дополнительные сведения см. в неактивных сведениях о шифровании Azure Cosmos DB. |
Установка исправлений на серверы | В качестве управляемой базы данных Azure Cosmos DB автоматически исправляет сервер и управляет сервером от вашего имени, устраняя необходимость выполнения задач обслуживания вручную. |
Административные учетные записи с надежными паролями | Невозможно иметь учетную запись администратора без пароля в Azure Cosmos DB. Безопасность с помощью проверки подлинности на основе секретов TLS и HMAC по умолчанию выполняется. |
Сертификаты безопасности и защиты данных | Самый актуальный список сертификатов см. в документации по соответствию Azure и последнему документу о соответствии Azure со всеми сертификатами Azure, включая Azure Cosmos DB. |