шифрование данных в состоянии покоя Azure

Microsoft Azure включает средства для защиты данных в соответствии с потребностями вашей компании в области безопасности и соответствия требованиям. В этой статье рассматривается следующее:

  • Защита неактивных данных в Microsoft Azure.
  • Различные компоненты, участвующие в реализации защиты данных.
  • Преимущества и компромиссы различных подходов к защите управления ключами.

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

Что такое шифрование неактивных данных?

Шифрование — это безопасная кодировка данных, используемых для защиты конфиденциальности данных. Шифрование данных в состоянии покоя в Azure используют симметричное шифрование для быстрого шифрования и дешифрования больших объемов данных согласно простой концептуальной модели.

  • Симметричный ключ шифрования шифрует данные по мере записи в хранилище.
  • Тот же ключ шифрования расшифровывает эти данные, готовые к использованию в памяти.
  • Разные разделы могут использовать разные клавиши.
  • Храните ключи в защищённом месте с политиками контроля доступа и аудита на основе идентификации. Если ключи шифрования данных хранятся вне защищённых мест, зашифруйте их, используя ключ шифрования, который хранится в безопасном месте.

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

Назначение шифрования неактивных данных

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

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

Управление данными и соблюдение требований также может требовать шифрования в состоянии покоя. Отраслевые и государственные нормативные акты, такие как HIPAA, PCI и FedRAMP, устанавливают конкретные меры защиты по защите данных и требованиям к шифрованию. Некоторые из этих правил требуют шифрования в состоянии покоя. Для получения дополнительной информации о подходе Microsoft к валидации FIPS 140 см. Федеральный стандарт обработки информации (FIPS) 140.

Шифрование данных в состоянии покоя не только позволяет выполнить нормативные требования и требования к соответствию, но и обеспечивает защиту в глубину. Microsoft Azure предоставляет соответствующую платформу для служб, приложений и данных. Платформа также обеспечивает комплексную безопасность объектов и физики, контроль доступа к данным и аудит. Однако важно обеспечить дополнительные «перекрывающиеся» меры безопасности на случай, если одна из других мер не сработает. Шифрование неактивных данных обеспечивает такую меру безопасности.

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

Параметры управления ключами

Azure предоставляет два основных подхода для управления ключами шифрования:

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

Ключи, управляемые клиентом (опционально): организации, которым требуется больший контроль над ключами шифрования, могут самостоятельно управлять своими ключами, используя Azure Key Vault или Azure Key Vault Managed HSM. Этот подход позволяет управлять жизненными циклами ключей, политиками доступа и криптографическими операциями. Ключи, управляемые клиентом, обеспечивают дополнительный контроль за счет увеличения ответственности и сложности управления. Для организаций с нормативными или договорными требованиями, требующими физического размещения ключевого материала вне инфраструктуры Microsoft, Azure Key Vault Managed HSM также поддерживает внешнее управление ключами (preview), которое сохраняет ключ шифрования ключа (KEK) в управляемом клиентом аппаратном модуле безопасности (HSM) полностью вне Azure.

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

Компоненты шифрования данных в состоянии покоя Azure

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

Диаграмма, демонстрирующая компоненты Azure в режиме покоя и иерархию ключей.

Azure Key Vault

Место хранения ключей шифрования и управление доступом к этим ключам имеет принципиально важное значение в отношении модели шифрования неактивных данных. Необходимо обеспечить высокий уровень безопасности ключей, но сделать их управляемыми указанными пользователями и доступными для определенных служб. Для Azure сервисов рекомендуемым решением для хранения ключей является Azure Key Vault (Premium tier) или Azure Key Vault Managed HSM, обеспечивающее единый опыт управления всеми сервисами. Вы храните ключи и управляете ими в хранилищах ключей, и вы можете предоставить пользователям или службам доступ к хранилищу ключей. Azure Key Vault поддерживает ключи, созданные клиентом, и импортированные ключи клиента для использования в сценариях с ключами шифрования, управляемыми клиентом.

Microsoft Entra ID

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

Шифрование конверта с помощью иерархии ключей

В реализации шифрования неактивных данных вы используете несколько ключей шифрования. Хранение ключа шифрования в Azure Key Vault обеспечивает безопасный доступ к ключам и центральное управление ключами. Однако сервисно-локальный доступ к ключам шифрования более эффективен для массового шифрования и расшифровки, чем взаимодействие с Key Vault для каждой операции с данными. Такой подход позволяет обеспечить более эффективное шифрование и лучшую производительность. Ограничение использования одного ключа шифрования снижает риск компрометации ключа и стоимость повторного шифрования при замене ключа. Модели шифрования Azure в состоянии покоя используют огибающее, при котором KEK шифрует ключ шифрования данных (DEK). Эта модель формирует иерархию ключей, которая лучше отвечает требованиям к производительности и безопасности:

  • Ключ шифрования данных (DEK) — симметричный ключ AES-256, который шифрует раздел или блок данных, иногда также называемый ключом данных. Один ресурс может содержать множество разделов и множество DEK. Шифрование каждого блока данных с помощью отдельного ключа усложняет атаки криптоанализа. Сохранение DEK локальными для сервиса, который шифрует и расшифровывает данные, максимизирует производительность.
  • Ключ шифрования ключей (KEK) — ключ, используемый для шифрования ключей DEK с помощью конвертного шифрования, также называемого обёртыванием. Используя KEK, который никогда не покидает Key Vault, вы можете шифровать и управлять DEK. Сущность, которая имеет доступ к KEK, может отличаться от сущности, требующей DEK. Сущность может управлять доступом к DEK, чтобы ограничить доступ каждого DEK к определенному разделу. Поскольку для расшифровки DEK требуется KEK, вы можете криптографически стереть DEK и данные, отключив KEK. Отключение KEK делает недоступными все зависимые сервисы, такие как базы данных Azure SQL прозрачное шифрование данных (TDE), учетные записи служба хранилища Azure с ключами, управляемыми клиентом, и виртуальные машины, защищённые Шифрование дисков Azure. Отключение также влияет только на то хранилище, в котором находится этот ключ. Если для ключа была создана резервная копия и он был восстановлен в другом хранилище, восстановленная копия остаётся полностью функциональной, и отключение не затрагивает её. Для получения дополнительной информации см. раздел «Вопросы безопасности резервного копирования».

Поставщики ресурсов и экземпляры приложений хранят зашифрованные DEK в виде метаданных. Расшифровать ключи DEK может только сущность с доступом к ключу KEK. Azure поддерживает различные модели хранения ключей. Дополнительные сведения см. в статье Модели шифрования данных.

Когда сервисы кэшируют DEK локально для активных криптографических операций, системы безопасности платформы Azure защищают кэшированные ключи, включая вычислительную изоляцию на уровне хоста и защиту процесса. Кэшированные операционные ключи — это механизм доступности и производительности: KEK в Key Vault остаётся корнем доверия, а отзыв ключа регулирует доступ к зашифрованным данным.

Шифрование неактивных данных в облачных службах Microsoft

Вы используете облачные сервисы Microsoft во всех трёх облачных моделях: инфраструктура как услуга (IaaS), платформа как услуга (PaaS) и программное обеспечение как услуга (SaaS). В следующих примерах показано, как они соответствуют каждой модели:

  • Программные сервисы, или SaaS, предоставляют облачные приложения, такие как Microsoft 365.
  • Платформенные сервисы, или PaaS, предоставляют облачные возможности, такие как хранение данных, аналитика и функциональность сервисной шины для клиентских приложений.
  • Инфраструктурные сервисы, или IaaS, размещают операционные системы и приложения, развернутые клиентами, которые также могут использовать другие облачные сервисы.

Шифрование в состоянии покоя для SaaS-организаций

Организации, работающие с программным обеспечением как услугой (SaaS), обычно обеспечивают шифрование в состоянии покоя или делают его доступным в каждом сервисе. Microsoft 365 предлагает несколько вариантов проверки или включения шифрования в состоянии покоя. Сведения о службах Microsoft 365 см. в разделе Encryption в Microsoft 365.

Шифрование в состоянии покоя для PaaS-организаций

Организации, ориентированные на платформу как услугу (PaaS), обычно хранят свои данные в сервисе хранения, таком как Хранилище BLOB-объектов. Однако данные также могут кэшироваться или храниться в среде выполнения приложения, например виртуальной машине. Чтобы просмотреть доступные для вас параметры шифрования, изучите модели шифрования данных для используемых платформ хранилища и приложений.

Шифрование в состоянии покоя для организаций IaaS

Организации инфраструктуры как услуги (IaaS) могут использовать различные сервисы и приложения. Сервисы IaaS могут поддерживать шифрование в состоянии покоя на виртуальных машинах, размещённых в Azure, используя шифрование на хоста.

Зашифрованное хранилище

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

Зашифрованные вычисления

Управляемые диски, снимки и изображения Azure по умолчанию шифруются с помощью служба хранилища Azure Service Encryption и управляемых платформой ключей. Такое стандартное шифрование не требует настройки клиента или дополнительных затрат. Более комплексное решение для шифрования гарантирует, что хост виртуальной машины не сохраняет данные в незашифрованном виде. Во время обработки данных на виртуальной машине система может сохранять данные в файл страницы Windows или Linux-своп, в сбойный дамп или в журнал приложений. Чтобы гарантировать шифрование этих данных в состоянии покоя, приложения IaaS могут использовать шифрование на хосте виртуальной машины Azure IaaS. По умолчанию шифрование на хосте использует ключи, управляемые платформой, но вы можете настроить ключи, управляемые клиентом, для дополнительного контроля.

Пользовательское шифрование данных в состоянии покоя

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

поддержка модели шифрования поставщиков ресурсов Azure

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

шифрование дисков виртуальной машины Azure

Организации, использующие модель «инфраструктура как услуга» (IaaS) в Azure, могут шифровать диски своих виртуальных машин IaaS при хранении с помощью шифрования на узле. Дополнительные сведения см. в разделе "Шифрование на узле— сквозное шифрование для виртуальной машины".

служба хранилища Azure

Все сервисы служба хранилища Azure (Хранилище BLOB-объектов, Queue Storage, Table Storage и Файлы Azure) поддерживают серверное шифрование в состоянии покоя. Хранилище BLOB-объектов и Queue Storage также поддерживают текущее шифрование на стороне клиента.

База данных SQL Azure

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

Azure SQL обеспечивает серверное шифрование с помощью прозрачное шифрование данных (TDE). Для сервисно управляемого TDE Azure автоматически создаёт и управляет ключами. Шифрование можно включить на уровне базы данных и сервера. прозрачное шифрование данных (TDE) по умолчанию включена в новых базах данных. Azure SQL поддерживает асимметричные управляемые клиентом модули защиты TDE RSA или RSA-HSM длиной 2048 или 3072 бита в Azure Key Vault или Azure Key Vault Managed HSM. Дополнительные сведения см. в статье о прозрачном шифровании данных SQL Azure с помощью ключа, управляемого клиентом.

База данных SQL Azure поддерживает шифрование на стороне клиента через функцию Always Encrypted. Always Encrypted использует ключ, который клиент создает и сохраняет. Вы можете хранить мастер-ключ в хранилище сертификатов Windows, Azure Key Vault или локальном HSM. Пользователи SQL могут использовать SQL Server Management Studio для выбора ключа, который шифрует каждый столбец.

Заключение

Защита данных клиентов, хранящихся в сервисах Azure, важна для Microsoft. Сервисы, размещённые на Azure, предоставляют опции шифрования в состоянии покоя. Сервисы Azure поддерживают ключи, управляемые платформой, ключи, управляемые клиентом, или шифрование на стороне клиента. Сервисы Azure продолжают улучшать доступность шифрования в покое.

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

  • Дополнительные сведения о ключах, управляемых платформой, и управляемых клиентом ключах см. в моделях шифрования данных .
  • Узнайте, как Azure использует шифрование доудное шифрование для устранения угроз, которые приходят с шифрованием данных.
  • Узнайте, что делает Microsoft для обеспечения целостности и безопасности хостов, пересекающих этапы сборки, интеграции, эксплуатации и ремонта платформы, включая аппаратное обеспечение и встроенное ПО.