Обеспечьте безопасность Azure Key Vault

Azure Key Vault защищает криптографические ключи, сертификаты (и связанные с ними закрытые ключи) и секреты (например, строки подключения и пароли) в облаке. Однако при хранении конфиденциальных и критически важных для бизнеса данных необходимо выполнить действия по максимальной безопасности хранилищ и данных, хранящихся в них.

Рекомендации по безопасности в этой статье реализуют принципы нулевого доверия: "Проверить явно", "Использовать минимальный доступ к привилегиям" и "Предположить нарушение". Подробные рекомендации по нулю доверия см. в центре рекомендаций по нулю доверия.

В этой статье приведены рекомендации по безопасности, помогающие защитить развертывание Azure Key Vault.

Безопасность для конкретной службы

Azure Key Vault имеет уникальные рекомендации по безопасности, связанные с архитектурой хранилища и соответствующим использованием службы для хранения криптографических материалов.

  • Используйте одно хранилище ключей для каждого приложения, региона и среды: создайте отдельные хранилища ключей для разработки, предварительной подготовки и рабочей среды, чтобы снизить влияние нарушений.

    Хранилища ключей определяют границы безопасности для хранимых секретов. Группирование секретов в одном хранилище увеличивает радиус взрыва события безопасности, так как атаки могут получить доступ к секретам в разных областях. Чтобы управлять доступом по различным направлениям, подумайте, к каким секретам должно иметь доступ конкретное приложение, а затем разделите свои хранилища ключей в соответствии с этим разграничением. Разделение хранилищ ключей по приложениям — это самая распространенная граница. Но границы безопасности могут быть более детализированными для больших приложений, например, для каждой группы связанных служб.

  • Используйте один Key Vault для каждого клиента в мультитенантных решениях: для мультитенантных решений SaaS используйте отдельное хранилище ключей для каждого клиента для поддержания изоляции данных. Такой подход обеспечивает безопасную изоляцию данных клиента и рабочих нагрузок. Дополнительные сведения см. в разделе "Многотенантность" и Azure Key Vault.

  • Не используйте Key Vault в качестве хранилища данных для конфигурации клиента или службы: службы должны использовать служба хранилища Azure с шифрованием неактивных данных или Конфигурация приложений Azure. Эти параметры являются более производительными для сценариев конфигурации.

  • Не храните сертификаты (принадлежащие клиенту или службе) в виде секретов: храните сертификаты, принадлежащие службе, как сертификаты Key Vault и настройте для них автоматическую ротацию. Дополнительные сведения см. в хранилище ключей Azure: сертификаты и общие сведения об автообмене в Azure Key Vault.

  • Не сохраняйте содержимое клиента в Key Vault: Key Vault не является хранилищем данных и не строится для масштабирования, как один. Вместо этого используйте Azure Cosmos DB или служба хранилища Azure. Клиенты, которые хотят использовать собственный ключ (BYOK) для шифрования неактивных данных, могут хранить ключ-оболочку в Azure Key Vault и использовать его для шифрования данных в служба хранилища Azure.

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

Снижение сетевого воздействия крайне важно для защиты Azure Key Vault от несанкционированного доступа. Настройте ограничения сети на основе требований и вариантов использования вашей организации. Подробные сведения и пошаговые инструкции по настройке см. в разделе "Настройка сетевой безопасности для Azure Key Vault".

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

  • Отключите доступ к общедоступной сети и используйте только частные конечные точки: разверните Приватный канал Azure, чтобы установить частную точку доступа из виртуальной сети в Azure Key Vault и предотвратить доступ к общедоступному Интернету. Отключение публичного доступа блокирует подключения плоскости данных; общедоступные записи DNS хранилища остаются разрешимыми по замыслу (см. видимость общедоступного DNS закрытого хранилища ключей). Инструкции по реализации см. в разделе "Интеграция Key Vault с Приватный канал Azure".

  • Включение брандмауэра Key Vault: ограничение доступа к общедоступным статическим IP-адресам или виртуальным сетям. Полные сведения см. в разделе "Настройка сетевой безопасности: параметры брандмауэра".

    • Для некоторых сценариев использования клиентами требуется, чтобы доверенные службы Microsoft обходили брандмауэр; в таких случаях может потребоваться настройка хранилища для разрешения доверенных служб Microsoft. Этот параметр разрешает доступ только для служб, указанных в таблице Доверенные службы; службы Microsoft, которых нет в этом списке (например, Azure DevOps), по-прежнему требуют правила IP-адресов брандмауэра, правила виртуальной сети или частной конечной точки.
  • Используйте периметр безопасности сети. Определите границу логической сетевой изоляции для ресурсов PaaS (например, Azure Key Vault, хранилища Azure и базы данных SQL), развернутых за пределами периметра виртуальной сети вашей организации и (или) общедоступных статических IP-адресов. Полные сведения см. в разделе "Настройка сетевой безопасности: периметр безопасности сети".

    • publicNetworkAccess: SecuredByPerimeter Переопределяет значение "Разрешить доверенным службам Майкрософт обходить брандмауэр", что означает, что некоторые сценарии, которые зависят от этого доверия, не будут работать.
  • Принудительное управление версиями TLS на клиентах: Azure Key Vault поддерживает TLS 1.2 и 1.3. Так как интерфейс Key Vault — это мультитенантная служба, в которой хранилища от разных клиентов могут совместно использовать один общедоступный IP-адрес, каждый ЗАПРОС HTTPS проходит проверку подлинности и авторизован независимо. Клиенты участвуют в согласовании параметров TLS, поэтому настройте их на использование только TLS 1.2 или 1.3, чтобы каждое соединение использовало соответствующий уровень защиты. Дополнительные сведения см. в разделе Ведение журнала в Key Vault, где приведены примеры запросов Kusto для мониторинга версий TLS, используемых клиентами.

Управление удостоверениями и доступом

Azure Key Vault использует идентификатор Microsoft Entra для проверки подлинности. Доступ управляется двумя интерфейсами: плоскостью управления (для управления самим Key Vault) и плоскостью данных (для работы с ключами, секретами и сертификатами). Дополнительные сведения о модели доступа и конечных точках см. в статье Azure RBAC для операций плоскости данных Key Vault.

  • Включение управляемых удостоверений. Используйте управляемые удостоверения Azure для всех подключений приложений и служб к Azure Key Vault для устранения жестко закодированных учетных данных. Управляемые удостоверения помогают защитить проверку подлинности при удалении необходимости явных учетных данных. Сведения о методах и сценариях проверки подлинности см. в статье "Проверка подлинности Azure Key Vault".

  • Используйте управление доступом на основе ролей: используйте контроль доступа на основе ролей Azure (RBAC) для управления доступом к Azure Key Vault. Дополнительные сведения см. в статье Azure RBAC для операций с данными в Key Vault.

    Модель разрешений RBAC позволяет назначать роли на уровне хранилища для постоянного доступа, а также выполнять временные назначения (JIT) для привилегированных операций. Назначения области объектов поддерживают только операции чтения; для административных операций, таких как управление доступом к сети, мониторинг и управление объектами, требуются разрешения на уровне хранилища. Для безопасной изоляции между командами приложений используйте одно Key Vault для каждого приложения.

  • Назначьте привилегированные роли JIT: используйте Azure управление привилегированными пользователями (PIM) для назначения соответствующих ролей JIT Azure RBAC для администраторов и операторов Key Vault. Дополнительные сведения см. в обзоре управление привилегированными пользователями (PIM).

  • Включение политик условного доступа Microsoft Entra: Key Vault поддерживает политики условного доступа Microsoft Entra для применения элементов управления доступом на основе таких условий, как расположение пользователя или устройство. Для получения дополнительной информации см. обзор условного доступа.

  • Примените принцип наименьшей привилегии: ограничить количество пользователей с административными ролями и обеспечить предоставление пользователям только минимальных разрешений, необходимых для их роли. Дополнительные сведения см. в разделе "Повышение безопасности" с помощью принципа наименьшей привилегии.

Защита данных

Защита данных, хранящихся в Azure Key Vault, требует включения мягкого удаления, защиты от очистки и автоматической смены криптографических материалов.

Ведение журналов и мониторинг

Комплексное ведение журнала и мониторинг обеспечивают обнаружение подозрительных действий и соответствие требованиям аудита.

  • Включение ведения журнала аудита: ведение журнала Key Vault сохраняет сведения о операциях, выполняемых в хранилище. Дополнительные сведения см. в разделе «Ведение журнала в Key Vault».

  • Включите Microsoft Defender для Key Vault, чтобы отслеживать и оповещать о подозрительной активности. Дополнительные сведения см. в статье Общие сведения о Microsoft Defender для Key Vault.

  • Включение оповещений журнала для событий безопасности: настройте оповещения для уведомления при регистрации критических событий, таких как сбои доступа или удаление секретов. Дополнительные сведения см. в статье "Мониторинг и оповещение" для Azure Key Vault.

  • Мониторинг и оповещение. Интеграция Key Vault с Сеткой событий для получения уведомлений об изменениях ключей, сертификатов или секретов. Дополнительные сведения см. в разделе "Мониторинг Key Vault с помощью Сетка событий Azure".

Соответствие требованиям и управление

Регулярные аудиты соответствия и политики управления гарантируют, что развертывание Key Vault соответствует стандартам безопасности и требованиям организации.

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

Регулярные резервные копии обеспечивают непрерывность бизнес-процессов и защищают от потери данных от случайного или вредоносного удаления.

  • Включите собственное резервное копирование для Azure Key Vault: настройте и используйте встроенную функцию резервного копирования Azure Key Vault для резервного копирования секретов, ключей и сертификатов, обеспечивая возможность восстановления. Дополнительные сведения см. в разделе Резервное копирование Azure Key Vault.

  • Убедитесь, что существуют резервные копии для секретов, которые не могут быть воссозданы: Сделайте резервное копирование объектов Key Vault (например, ключей шифрования), которые нельзя повторно создать из других источников. Дополнительные сведения см. в разделе Резервное копирование Azure Key Vault.

  • Тестирование процедур резервного копирования и восстановления. Чтобы проверить эффективность процессов резервного копирования, регулярно проверяйте восстановление секретов, ключей и сертификатов Key Vault. Дополнительные сведения см. в разделе Резервное копирование Azure Key Vault.

  • Понимание независимости резервных копий: ключ, восстановленный из резервной копии в другое резервное хранилище, обладает полной независимостью от оригинала. Отключение, удаление или очистка исходного ключа не влияет на восстановленные копии. Отключение или удаление ключа также приводит к выключению всех зависимых служб данных (например, базы данных TDE SQL становятся недоступны, а учетные записи хранения с ключами, управляемыми клиентом, возвращают ошибки). Если есть подозрение, что ключ был скомпрометирован, перейдите на новый ключ и перенесите зависимые службы перед отключением старого. Подробные сведения см. в статье "Рекомендации по обеспечению безопасности резервного копирования " и ответ на компромисс ключа.

Рекомендации по обеспечению безопасности, относящиеся к ключам, секретам и сертификатам, см. в статье:

  • Защита ключей Azure Key Vault: рекомендации по обеспечению безопасности для конкретных ключей, включая смену, защиту HSM и BYOK.
  • Защита секретов Azure Key Vault: рекомендации по обеспечению безопасности, относящиеся к секретам, включая смену, кэширование и мониторинг.
  • Защита сертификатов Azure Key Vault: рекомендации по обеспечению безопасности для конкретных сертификатов, включая управление жизненным циклом, продление и интеграцию ЦС.

Следующие шаги