Поделиться через


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

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

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

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

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

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

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

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

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

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

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

Потребности организации в управлении данными и обеспечении соответствия требованиям также могут потребовать неактивных шифрований. Отраслевые и государственные правила, такие как HIPAA, PCI и FedRAMP, выложили конкретные меры защиты данных и требования к шифрованию. Шифрование при хранении является обязательной мерой, необходимой для соблюдения некоторых нормативов. Дополнительные сведения о подходе Майкрософт к проверке FIPS 140 см. в разделе Federal Information Processing Standard (FIPS) 140.

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

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

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

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

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

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

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

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

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

Компоненты

Azure Key Vault

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

Microsoft Entra ID

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

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

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

  • Ключ шифрования данных (DEK) — это симметричный ключ AES256, который используется для шифрования секции или блока данных. Иногда его называют просто ключом данных. Один ресурс может содержать множество секций и много ключей шифрования данных. Шифрование каждого блока данных другим ключом создает дополнительные сложности для выполнения атак в отношении зашифрованных данных. Сохранение локальных ключей deKs в службе шифрования и расшифровки данных обеспечивает максимальную производительность.
  • Ключ шифрования ключей (KEK) — ключ шифрования, используемый для шифрования ключей шифрования данных с помощью оболочечного шифрования, также называемого обертыванием. С помощью ключа шифрования ключей, который никогда не покидает Key Vault, можно шифровать и управлять ключами шифрования данных. Сущность, которая имеет доступ к KEK, может отличаться от сущности, требующей DEK. Сущность может управлять доступом к DEK, чтобы ограничить доступ каждого DEK к определенному разделу. Поскольку KEK необходим для расшифровки ключей шифрования данных (DEK), клиенты могут криптографически удалять эти ключи и данные, отключив KEK.

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

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

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

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

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

Шифрование данных в состоянии покоя для клиентов SaaS

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

Шифрование данных в состоянии покоя для клиентов PaaS

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

Шифрование данных в состоянии покоя для клиентов IaaS

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

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

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

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

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

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

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

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

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

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

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

хранилище Azure

Все службы служба хранилища Azure (Blob storage, хранилище очередей, хранилище таблиц и Файлы Azure) поддерживают шифрование данных в состоянии покоя на стороне сервера, а некоторые службы также поддерживают шифрование на стороне клиента.

  • Server-side (Default): все службы служба хранилища Azure автоматически обеспечивают шифрование на стороне сервера по умолчанию с помощью ключей, управляемых платформой. Это шифрование прозрачно для приложения и не требует настройки. Дополнительные сведения см. в разделе Шифрование службы служба хранилища Azure для данных в состоянии покоя. Клиенты могут при необходимости использовать ключи, управляемые клиентом, в Azure Key Vault для дополнительного управления. Дополнительные сведения см. в разделе Storage Service Encryption с помощью ключей, управляемых клиентом, в Azure Key Vault.
  • На стороне клиента (необязательно): Объекты BLOB Azure, таблицы и очереди поддерживают шифрование на стороне клиента для пользователей, которым нужно шифровать данные до того, как они попадут в Azure. При использовании шифрования на стороне клиента данные шифруются и передаются в виде зашифрованного большого двоичного объекта. Управление ключами осуществляется пользователем. Дополнительные сведения см. в разделе Шифрование на стороне клиента и Azure Key Vault для Microsoft служба хранилища Azure.

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

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

Поддержка шифрования сервера в настоящее время предоставляется через функцию SQL с именем прозрачное шифрование данных. Когда клиент База данных SQL Azure включает TDE, ключи автоматически создаются и управляются ими. Шифрование можно включить на уровне базы данных и сервера. По состоянию на июнь 2017 года прозрачное шифрование данных (TDE) по умолчанию включается в только что созданных базах данных. База данных SQL Azure поддерживает RSA 2048-битные ключи, управляемые клиентом, в Azure Key Vault. Дополнительные сведения см. в разделе прозрачное шифрование данных с поддержкой собственных ключей для База данных SQL Azure и Data Warehouse.

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

Заключение

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

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

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