AWS Secrets Manager і Parameter Store

Використання сховищ даних в AWS

Dunieski Otano

AWS Solutions Architect

Катастрофа через хардкоджені паролі

  • Розробник хардкодить пароль до бази в коді
  • Код завантажено в публічний репозиторій GitHub
  • Зловмисник знаходить пароль за 12 хвилин
  • Базу видалено, вимагають викуп

атака

Використання сховищ даних в AWS

Чому не можна хардкодити секрети

  • Типові помилки
    • Хардкод у вихідному коді
    • Відкритий текст у конфіг-файлах
    • Коміт у систему контролю версій
  • Наслідки
    • Витік у публічних репозиторіях
    • Складно ротути паролі
    • Немає аудиторського сліду

не робіть

Використання сховищ даних в AWS

Огляд AWS Secrets Manager

  • Призначення
    • Зберігати й автоматично ротувати облікові дані
  • Що зберігати
    • Паролі до БД, API-ключі, OAuth-токени
  • Ключові можливості
    • Автоматична ротація, шифрування KMS, журнал аудиту

sm

Використання сховищ даних в AWS

Автоматична ротація в Secrets Manager

  • Процес ротації
    • Функція Lambda оновлює облікові дані
  • Вікно ротації
    • Налаштуйте час ротації (rate або cron)
  • Без простою
    • Старий і новий паролі діють під час ротації

rotation

Використання сховищ даних в AWS

Зберігання секретів у форматі JSON

  • Структуровані секрети
    • Зберігайте кілька значень в одному секреті
  • Формат JSON
    • {"username": "admin", "password": "...", "host": "db.example.com"}
  • Отримання й парсинг
    • Використайте API GetSecretValue

get

Використання сховищ даних в AWS

Огляд Parameter Store

  • Частина AWS Systems Manager
  • Призначення
    • Зберігати конфігурацію та статичні секрети
  • Ієрархічна організація
    • /app/prod/db/password
    • /app/dev/api-key
  • Безплатний рівень
    • До 10 000 стандартних параметрів (макс. 4 KB)
    • Розширені параметри (макс. 8 KB) — з оплатою

ps

Використання сховищ даних в AWS

Типи параметрів у Parameter Store

  • String
    • Текстова конфігурація (флагі функцій, кінцеві точки)
  • StringList
    • Значення через кому (IP-адреси)
  • SecureString
    • Шифрування KMS (паролі, API-ключі)

типи

Використання сховищ даних в AWS

Secrets Manager vs Parameter Store: як обрати

  • Використовуйте Secrets Manager, коли
    • Потрібна автоматична ротація
    • Зберігаєте облікові дані БД
  • Використовуйте Parameter Store, коли
    • Статичні конфігураційні значення
    • Важлива економія (безплатний рівень)
  • Використовуйте разом
    • Типовий підхід у продакшені

просунуто

Використання сховищ даних в AWS

Давайте потренуємось!

Використання сховищ даних в AWS

Preparing Video For Download...