Открыть сервис

AWS KMS

AWS KMS (Amazon Web Services Key Management Service) — это облачный сервис, предоставляемый компанией Amazon Web Services (Amazon — организация, признанная нежелательной на территории РФ? примечание: Amazon не входит в официальный перечень экстремистских/террористических организаций РФ, но деятельность AWS регулируется общим законодательством РФ об облачных сервисах и защите информации), предназначенный для создания, хранения и управления криптографическими ключами, используемыми для шифрования данных в сервисах AWS и в пользовательских приложениях. Сервис обеспечивает централизованное управление жизненным циклом ключей, включая их генерацию, ротацию, удаление, а также интеграцию с другими сервисами AWS для прозрачного шифрования и дешифрования данных без необходимости управления самими ключами со стороны пользователя.

История и развитие

AWS KMS был запущен в 2014 году как часть экосистемы Amazon Web Services для удовлетворения растущих требований к безопасности и соответствию нормативным требованиям (например, GDPR, HIPAA, PCI DSS). Первоначально сервис поддерживал только симметричные ключи AES-256, но со временем был расширен для поддержки асимметричных ключей (RSA, ECC) и гибридных схем.

В 2018 году была добавлена поддержка ключей, управляемых клиентом (Customer Master Keys, CMK), которые хранятся в аппаратных модулях безопасности (HSM), сертифицированных по стандарту FIPS 140-2 Level 3. В 2020 году появилась возможность использования внешних ключей (External Key Store, XKS), позволяющая клиентам хранить ключи в собственных HSM или сторонних системах.

Архитектура и компоненты

Основные элементы

  • Ключи KMS — это логические объекты, содержащие метаданные (идентификатор, дата создания, статус, политики доступа) и ссылку на фактический криптографический материал, который хранится в защищённом HSM. Ключи бывают трёх типов:
  • AWS managed keys — автоматически создаются и управляются AWS для конкретных сервисов (например, для шифрования EBS-томов или S3-бакетов).
  • Customer managed keys (CMK) — создаются и управляются пользователем, с возможностью настройки политик доступа, ротации и удаления.
  • Custom key stores (CKS) — ключи, хранящиеся в собственном HSM-кластере клиента, подключённом через AWS CloudHSM.
  • Аппаратный модуль безопасности (HSM) — физическое устройство, сертифицированное по FIPS 140-2 Level 3, которое выполняет все криптографические операции (шифрование, дешифрование, подпись) в изолированной среде. AWS KMS использует многотенантный HSM, где ключи разных клиентов изолированы на уровне логических разделов.
  • Политики доступа (Key Policies) — документы в формате JSON, определяющие, какие пользователи, роли или сервисы могут управлять ключом или использовать его для криптографических операций. Политики могут быть привязаны к отдельному ключу или унаследованы от IAM-политик.

Интеграция с сервисами AWS

AWS KMS интегрирован с более чем 50 сервисами AWS, включая:

  • Amazon S3 — для шифрования объектов на стороне сервера (SSE-KMS).
  • Amazon EBS — для шифрования томов и снимков.
  • Amazon RDS — для шифрования баз данных.
  • AWS Lambda — для шифрования переменных окружения.
  • Amazon DynamoDB — для шифрования таблиц.
  • AWS CloudTrail — для аудита всех операций с ключами.

Функциональные возможности

Управление ключами

  • Создание и импорт ключей: пользователь может создать новый ключ в AWS KMS или импортировать собственный криптографический материал (например, ключ, сгенерированный в локальном HSM).
  • Ротация ключей: автоматическая (ежегодная) или ручная ротация криптографического материала. При ротации создаётся новая версия ключа, а старые версии сохраняются для расшифровки ранее зашифрованных данных.
  • Удаление ключей: ключ может быть удалён только после планового периода ожидания (от 7 до 30 дней), в течение которого возможно восстановление. После удаления данные, зашифрованные этим ключом, становятся недоступными для расшифровки.
  • Мониторинг и аудит: все операции с ключами (создание, использование, удаление) регистрируются в AWS CloudTrail, что позволяет отслеживать действия пользователей и соответствие политикам безопасности.

Криптографические операции

  • Шифрование и дешифрование: симметричное шифрование с использованием алгоритма AES-256 (режим GCM или CBC). Максимальный размер данных для прямого шифрования — 64 КБ; для больших объёмов используется шифрование на стороне клиента с помощью генерации ключа данных (Data Key).
  • Генерация ключей данных (GenerateDataKey): создаёт симметричный ключ, который используется для шифрования больших объёмов данных, а сам ключ данных шифруется мастер-ключом KMS. Это позволяет избежать передачи больших объёмов данных через KMS.
  • Подпись и проверка подписи: асимметричные ключи (RSA 2048/4096, ECC P-256/P-384) используются для цифровой подписи и проверки подлинности данных.
  • Вывод ключа (Key Derivation): на основе мастер-ключа KMS и контекста шифрования генерируется уникальный ключ для каждого сеанса шифрования.

Модели безопасности и соответствие стандартам

Изоляция и защита

  • Физическая изоляция: HSM находятся в дата-центрах AWS, защищённых физическими барьерами, системами видеонаблюдения и контроля доступа.
  • Логическая изоляция: ключи разных клиентов изолированы на уровне HSM через механизмы виртуализации. Операции с ключами выполняются только в HSM, криптографический материал никогда не покидает устройство в открытом виде.
  • Шифрование в пути и в покое: все запросы к KMS передаются по протоколу TLS 1.2/1.3, а сами ключи в HSM хранятся в зашифрованном виде (с использованием дополнительного мастер-ключа HSM).

Соответствие стандартам

AWS KMS сертифицирован по ряду международных и отраслевых стандартов:

  • FIPS 140-2 Level 3 — для HSM, используемых в сервисе.
  • SOC 1/2/3 — для контроля над финансовой отчётностью и безопасностью.
  • PCI DSS — для обработки данных платежных карт.
  • HIPAA — для защиты медицинской информации.
  • GDPR — для защиты персональных данных граждан ЕС.

В России использование AWS KMS регулируется Федеральным законом № 152-ФЗ «О персональных данных» и требованиями ФСБ России к криптографическим средствам. AWS KMS не сертифицирован ФСБ России, поэтому использование сервиса для обработки персональных данных граждан РФ может потребовать дополнительных мер (например, использование сертифицированных СКЗИ или локализация данных на территории РФ).

Сравнение с альтернативами

ПараметрAWS KMSAzure Key VaultGoogle Cloud KMSHashiCorp Vault
Тип управленияОблачный, управляемыйОблачный, управляемыйОблачный, управляемыйСамостоятельное развёртывание
Аппаратная защитаHSM FIPS 140-2 Level 3HSM FIPS 140-2 Level 2+HSM FIPS 140-2 Level 3Опционально (через HSM-бэкенды)
Интеграция с экосистемойГлубокая (50+ сервисов AWS)Глубокая (Azure AD, Azure Services)Глубокая (GCP, G Suite)Универсальная (через API)
Цена$1/месяц за ключ + $0.03/10 000 запросов$0.03/месяц за ключ + $0.01/10 000 запросов$0.06/месяц за ключ + $0.03/10 000 запросовБесплатно (Community Edition) + стоимость инфраструктуры
Поддержка асимметричных ключейДа (RSA, ECC)Да (RSA, EC)Да (RSA, ECC)Да (RSA, ECC, Ed25519)
Внешние ключи (XKS)ДаДа (BYOK)Да (External Key Manager)Да (через Transit Secrets Engine)

Ограничения и критика

  • Зависимость от интернет-соединения: для выполнения криптографических операций требуется постоянное соединение с AWS KMS, что может быть проблематично в офлайн-средах или при высоких задержках.
  • Лимиты на запросы: по умолчанию — 5500 запросов в секунду на регион (может быть увеличено по запросу). Для высоконагруженных систем требуется планирование.
  • Стоимость при большом объёме: для систем, выполняющих миллионы операций шифрования в день, затраты могут быть значительными (например, $3000/месяц при 10 млн запросов).
  • Отсутствие поддержки российских криптоалгоритмов: AWS KMS не поддерживает ГОСТ Р 34.10-2012 (для подписи) или ГОСТ 28147-89 (для шифрования), что ограничивает его использование в государственных и корпоративных системах РФ, требующих сертифицированных СКЗИ.
  • Риск блокировки: в случае санкций или изменения законодательства доступ к AWS KMS из РФ может быть ограничен, что приведёт к невозможности расшифровать данные, зашифрованные мастер-ключами, хранящимися в сервисе.

Применение в России

Несмотря на ограничения, AWS KMS используется в России в следующих сценариях:

  • Шифрование данных в облачных средах (например, в AWS-регионе eu-central-1 или us-east-1) для компаний, которые не обрабатывают персональные данные граждан РФ.
  • Гибридные архитектуры — когда ключи генерируются в локальном HSM (например, через AWS CloudHSM), а управление осуществляется через AWS KMS.
  • Тестирование и разработка — для создания прототипов систем шифрования без привязки к сертифицированным СКЗИ.

Для соответствия требованиям ФСБ России и 152-ФЗ организации часто комбинируют AWS KMS с локальными СКЗИ (например, КриптоПро CSP) или используют альтернативные облачные KMS, развёрнутые на территории РФ (например, Yandex Cloud KMS или VK Cloud KMS).

Источники

  1. AWS Key Management Service Developer Guide (Amazon Web Services, 2024).
  2. NIST Special Publication 800-57: Recommendation for Key Management.
  3. Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных».
  4. Приказ ФСБ России от 10.07.2014 № 378 «Об утверждении Состава и содержания организационных и технических мер по обеспечению безопасности персональных данных».
  5. AWS KMS Pricing and Limits (aws.amazon.com/kms/pricing).
  6. Comparison of Cloud Key Management Services (Gartner, 2023).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →