Реализация шифрования данных при хранении в хранилище Azure
01.03.2025
Эта техническая и образовательная статья призвана помочь аналитикам безопасности, ИТ-администраторам и системным инженерам реализовать и настроить шифрование хранящихся данных в службе хранилища Azure. Защита хранимых данных является фундаментальной мерой безопасности. Служба хранилища Azure по умолчанию предлагает надежное шифрование с помощью ключей, управляемых Microsoft (MMK), и позволяет использовать ключи, управляемые клиентом (CMK), через Azure Key Vault для большего контроля [1].
Введение
Шифрование хранящихся данных гарантирует, что хранящиеся данные защищены от несанкционированного доступа. В Azure все данные в хранилище Azure по умолчанию шифруются [2]. Для организаций со строгими требованиями соответствия использование CMK имеет важное значение, поскольку оно обеспечивает полный контроль над жизненным циклом ключей шифрования (создание, ротация и отзыв).
В этом руководстве будет рассмотрена настройка обеих моделей шифрования с упором на внедрение и проверку ключей, управляемых клиентом.
Почему шифрование хранящихся данных так важно?
- Защита от несанкционированного доступа: гарантирует, что данные невозможно прочитать без ключа дешифрования.
- Соответствие нормативным требованиям: помогает соблюдать такие нормативные требования, как LGPD, GDPR, HIPAA и т. д.
- Управление ключами: с помощью CMK организации получают полный контроль над ключами шифрования.
Предварительные условия
- Активная подписка Azure.
- Административный доступ: разрешения на управление учетными записями хранения и хранилищами ключей.
- Существующая учетная запись хранения Azure (предпочтительно StorageV2).
- Azure Key Vault для хранения ключей CMK.
Шаг за шагом: настройка шифрования
1. Шифрование с помощью ключей, управляемых Microsoft (по умолчанию)
Это настройка по умолчанию и автоматическая. Чтобы проверить:
- Перейдите к своей Учетной записи хранения на портале Azure.
- В разделе «Безопасность + сеть» выберите Шифрование.
- Убедитесь, что тип шифрования по умолчанию — «Управляемые ключи Microsoft».
2. Реализация криптографии с помощью ключей, управляемых клиентом (CMK)
2.1. Создайте хранилище ключей Azure и ключ.
- Создайте новое Azure Key Vault. Важно: включите Защиту от очистки во время создания.
- В Key Vault перейдите к разделу Ключи и нажмите Создать/Импортировать, чтобы создать новый ключ (например:
storage-cmk-key).
2.2. Настройка доступа к учетной записи хранения
- Перейдите в свою Учетную запись хранения.
- Перейдите в раздел Шифрование и измените «Тип шифрования» на «Ключи, управляемые клиентом».
- Выберите вариант использования ключа из Key Vault. Когда вы это сделаете, Azure предложит вам создать управляемое удостоверение для учетной записи хранения. Позволять.
- Теперь вернитесь в Key Vault и перейдите в раздел Политики доступа.
- Создайте новую политику доступа. Предоставьте разрешения для ключей «Получить», «Обернуть ключ» и «Развернуть ключ».
- На этапе «Участник безопасности» найдите и выберите управляемое удостоверение для вашей учетной записи хранения.
- Сохраните политику доступа.
2.3. Настройка учетной записи хранения для использования CMK
- Вернитесь на страницу Шифрование своей учетной записи хранения.
- Выберите хранилище ключей и созданный вами ключ.
- Сохраните изменения. Отныне все данные, записанные в учетной записи, будут зашифрованы вашим ключом.
Проверка и тестирование
1. Тестирование доступа к данным
После настройки CMK загрузите и скачайте файл. Операция должна быть прозрачной.
# Загрузите тестовый файл
Загрузка BLOB-объекта хранилища az --account-name <storage_account> -c <container> -n "test.txt" -f "local/path/to/test.txt" --auth-mode login
# Загрузите тестовый файл
az Storage Blob Download --account-name <storage_account> -c <container> -n "test.txt" -f "local/path/to/downloaded.txt" --auth-mode вход в систему
2. Тестирование отзыва доступа к ключу
Это самый критический тест для CMK.
- В Key Vault перейдите к используемому ключу.
- Щелкните текущую версию ключа и измените настройку Включено на Нет.
- Подождите несколько минут.
- Попробуйте получить доступ к данным в своей учетной записи хранения (например, попробуйте еще раз загрузить большой двоичный объект).
- Ожидаемый результат: операция должна завершиться неудачно с ошибкой отказа в доступе (403 Forb).idden), доказывая, что вы имеете полный контроль над доступом к данным.
- Не забудьте повторно активировать ключ, чтобы восстановить доступ.
Поворот клавиш
Ротация ключей — важная практика обеспечения безопасности. С CMK у вас есть два варианта:
- Ручная ротация. Создайте новую версию ключа в Key Vault и обновите конфигурацию шифрования в учетной записи хранения, чтобы она указывала на новую версию.
- Авторотация: при настройке CMK в учетной записи хранения не указывайте версию ключа. Учетная запись хранения будет периодически проверять Key Vault и автоматически использовать последнюю версию ключа [3].
Лучшие практики
- Включите защиту от стирания и мягкое удаление в хранилище ключей, чтобы защитить ваши ключи от случайного или злонамеренного удаления.
- Используйте управляемые удостоверения, чтобы разрешить учетной записи хранения доступ к Key Vault. Это безопаснее, чем использование других методов.
- Отслеживание активности Key Vault. Используйте журналы диагностики Key Vault, чтобы отслеживать, кто и когда получает доступ к вашим ключам.
- Требовать безопасную передачу (HTTPS): при настройке учетной записи хранения всегда требуйте безопасную передачу для шифрования данных при передаче.
Заключение
Шифрование данных, хранящихся в службе хранилища Azure, — это фундаментальный уровень защиты. В то время как ключи, управляемые Microsoft, по умолчанию обеспечивают безопасность без каких-либо усилий, ключи, управляемые клиентом (CMK), обеспечивают уровень контроля и уверенности, необходимый многим организациям для удовлетворения строгих требований безопасности и соответствия требованиям. Овладев внедрением и управлением CMK, вы гарантируете, что ваши данные останутся защищенными и под вашим контролем.
Ссылки
[1] Майкрософт. (2023). Обзор шифрования хранилища Azure. [2] Майкрософт. (2023). Шифрование службы хранилища Azure для хранящихся данных. [3] Майкрософт. (2023). Управляемые клиентом ключи для шифрования хранилища Azure.