Ключи, управляемые клиентом, для шифрования службы хранилища Azure

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

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

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

Примечание.

Azure Key Vault и Управляемый HSM Azure Key Vault поддерживают одни и те же ИНТЕРФЕЙСы API и интерфейсы управления для настройки ключей, управляемых клиентом. Все действия, поддерживаемые Для Azure Key Vault, также поддерживаются для управляемого HSM в Azure Key Vault.

Сведения об управляемых клиентом ключах

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

Diagram showing how customer-managed keys work in Azure Storage

В следующем списке описаны шаги, пронумерованные на схеме.

  1. Администратор Azure Key Vault предоставляет управляемому удостоверению разрешения на доступ к ключам шифрования. Управляемое удостоверение может создаваться и управляться пользователем либо системой. Во втором случае оно будет строго связано с учетной записью хранения.
  2. Администратор службы хранилища Azure настраивает шифрование для учетной записи хранения с помощью ключа, управляемого клиентом.
  3. служба хранилища Azure использует управляемое удостоверение, которому администратор Azure Key Vault предоставил разрешения на шаге 1 для проверки подлинности доступа к Azure Key Vault с помощью идентификатора Microsoft Entra.
  4. Служба хранилища Azure заключает ключ шифрования учетной записи в ключ, управляемый клиентом, в Azure Key Vault.
  5. В случае операций чтения и записи Фабрика данных отправляет запросы в Azure Key Vault для извлечения ключа шифрования учетной записи из оболочки с целью выполнения операций шифрования и расшифровки.

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

  • wrapkey
  • unwrapkey
  • get

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

В службе "Политика Azure" предоставляется встроенная политика, которая требует, чтобы учетные записи хранения использовали ключи, управляемые клиентом, для рабочих нагрузок Хранилища BLOB-объектов и Файлов Azure. Дополнительные сведения см. в разделе Хранилище статьи Встроенные определения политик в Политике Azure.

Ключи, управляемые клиентом, для очередей и таблиц

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

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

Данные в хранилище BLOB-объектов и Файлах Azure всегда защищаются ключами, управляемыми клиентом, если эти ключи настроены для учетной записи хранения.

Включение ключей, управляемых клиентом, для учетной записи хранения

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

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

Требования к хранилищу ключей

Хранилище ключей или управляемый модуль HSM, в которых хранится ключ, должен иметь как обратимое удаление, так и защиту очистки. Шифрование службы хранилища Azure поддерживает ключи RSA и RSA-HSM размером 2048, 3072 и 4096. Подробнее см. в статье Сведения о ключах.

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

Управляемые клиентом ключи с хранилищем ключей в одном клиенте

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

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

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

Дополнительные сведения о различиях между управляемым удостоверением, назначаемым системой, и управляемым удостоверением, назначаемым пользователем см. в этой статье. Дополнительные сведения о том, как создать управляемое удостоверение, назначаемое пользователем, и управлять им, см. в статье Управление управляемым удостоверением, назначаемым пользователем.

Управляемые клиентом ключи с хранилищем ключей в другом клиенте

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

Управляемые клиентом ключи с управляемым HSM

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

Обновление версии ключа

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

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

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

Важно!

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

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

Автоматическое обновление версии ключа

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

Служба хранилища Azure проверяет хранилище ключей на наличие новой версии ключа только один раз в день. После смены ключа подождите 24 часа, прежде чем отключить старую версию.

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

Обновление версии ключа вручную

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

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

Отмена доступа к учетной записи хранения, использующая ключи, управляемые клиентом

Чтобы отменить доступ к учетной записи хранения, использующую ключи, управляемые клиентом, отключите ключ в хранилище ключей. Сведения об отключении ключа см. в статье "Отмена доступа к учетной записи хранения, которая использует ключи, управляемые клиентом".

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

Чтобы снова вызывать эти операции, восстановите доступ к ключу, управляемому клиентом.

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

Чтобы отменить доступ к ключам, управляемым клиентом, используйте PowerShell или Azure CLI.

Операции служба хранилища BLOB-объектов, которые завершаются сбоем после отзыва ключа

Файлы Azure операции, которые завершаются сбоем после отзыва ключа

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

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

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