Шифрование и управление сертификатами на AWS

Развёртывание приложений на AWS

Dunieski Otano

Amazon Web Services Solutions Architect

Пропавший резервный диск

  • Резервный диск потерялся при транспортировке
  • Зашифрованный в состоянии покоя, он бесполезен для похитителя
  • TLS делает то же самое для данных в транзите

Диск, защищённый замком, как иллюстрация шифрования в состоянии покоя, и незащищённый диск

Развёртывание приложений на AWS

Шифрование в состоянии покоя и в транзите

Двухпанельное сравнение: слева — шифрование в состоянии покоя с иконками RDS и S3, защищёнными ключом KMS; справа — TLS-туннель в транзите от клиента к Lambda

  • В состоянии покоя: данные на диске шифруются
  • Используются ключи, как правило через KMS
  • В транзите: данные шифруются при передаче по сети
  • Применяются сертификаты TLS
Развёртывание приложений на AWS

Шифрование на стороне клиента и на стороне сервера


На стороне сервера

  • Сервис шифрует данные после их получения
  • Простейший способ: AWS управляет процессом, как правило с помощью ключа KMS

На стороне клиента

  • Вы шифруете данные до их отправки из кода
  • Сервис хранит только шифртекст, но не открытый текст
Развёртывание приложений на AWS

Публичные и частные сертификаты

  • ACM: бесплатные публичные TLS-сертификаты для ваших доменов
  • Используются на балансировщиках нагрузки, CloudFront, API Gateway
  • AWS Private CA: выдаёт внутренние, частные сертификаты
  • Private CA обеспечивает внутренние сервисы и mTLS

Слева — бесплатный публичный сертификат ACM на балансировщике нагрузки и CloudFront; справа — сертификат Private CA для межсервисного mTLS

Развёртывание приложений на AWS

Ключи KMS и ротация

  • Ключи, управляемые AWS: создаются и ротируются AWS
  • Ключи, управляемые клиентом: вы контролируете политику и ротацию
  • Автоматическая ротация: новый ключевой материал ежегодно, идентификатор ключа остаётся прежним
  • Приложения продолжают использовать ту же ссылку на ключ

Типы ключей KMS рядом: слева — ключ, управляемый AWS, с автоматической ротацией; справа — ключ, управляемый клиентом, с настраиваемой политикой и ежегодной ротацией

Развёртывание приложений на AWS

Межаккаунтный доступ к ключам

Межаккаунтный доступ к ключу KMS: ключ в аккаунте A с политикой, предоставляющей аккаунту B право использования; аккаунт B шифрует и расшифровывает данные, при этом ключевой материал не покидает KMS

  • Политика ключа определяет, кто может использовать ключ KMS
  • Предоставьте другому аккаунту доступ к ключу через политику
  • Ключ никогда не покидает KMS
  • Обеспечивает совместный доступ к зашифрованным ресурсам между аккаунтами
Развёртывание приложений на AWS

Шифрование и сертификаты: общая картина

  • В транзите: сертификат ACM завершает TLS на границе сети
  • В состоянии покоя: ключ KMS шифрует хранимые данные
  • Автоматически ротируйте ключи и обновляйте сертификаты
  • Многоуровневая защита — от сети до диска

Многоуровневое шифрование: сертификат ACM завершает TLS в транзите на границе сети, ключ KMS шифрует данные в состоянии покоя; автоматическое ежегодное обновление и ротация для обоих

Развёртывание приложений на AWS

Давайте потренируемся!

Развёртывание приложений на AWS

Preparing Video For Download...