текст перекладу
Коли розробляєш медичний додаток, однією з важливих норм, що вступає в силу, є HIPAA. Одна з вимог цього регламенту щодо даних, які зберігаються, полягає в тому, що їх потрібно шифрувати.
У цьому пості ми розглянемо, як зашифрувати дані, що зберігаються, під час запуску додатку в середовищі AWS Elastic Beanstalk за допомогою Docker.
Проблема
Наш docker-застосунок розгортається в середовищі Elastic Beanstalk, де томи EBS, підключені до EC2 машин, на яких працюють контейнери, не шифруються.
Рішення
Існує кілька посібників, як увімкнути шифрування для нового EBS тому, підключеного до EC2, наприклад:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html
https://cloudacademy.com/blog/how-to-encrypt-an-ebs-volume-the-new-amazon-ebs-encryption/
Проблема, з якою ми зіткнулися, коли пробували ці підходи, полягає в тому, що оскільки ми використовували Docker, коли шифрується EBS, підключений до EC2 машини, шифрується лише кореневий том (/dev/xvda), в той час як новий том, який створюється Docker при розгортанні контейнера (/dev/xvdcz), залишався нешифрованим.
Щоб виправити цю проблему, необхідно виконати наступні кроки:
- Увійдіть до консолі управління AWS і перейдіть до розділу EC2
- EC2 Dashboard → Налаштування
- Виберіть Завжди шифрувати нові томи EBS і збережіть зміни
-
Перейдіть до розділу Elastic Beanstalk і виберіть застосунок/середовище, яке ви хочете зашифрувати
-
Натисніть Дії → Перебудувати середовище
Це призведе до завершення роботи поточної EC2 машини, на якій працює ваш docker-застосунок, і її пов'язаних томів. Буде створена нова EC2 машина, на якій усі томи, що створюються/підключаються до неї, будуть зашифровані.
-
Поверніться до EC2 → Панель EC2 → Налаштування
-
Вимкніть шифрування, увімкнуте на кроці 3
Перекладено з: How to encrypt your data at rest using Docker and AWS Elastic Beanstalk