Паттерны доступа к данным в мультиарендной среде и политики IAM

Использование хранилищ данных в AWS

Dunieski Otano

AWS Solutions Architect

Нарушение безопасности в мультиарендной среде

  • SaaS-приложение обслуживает 1 000 компаний
  • Ошибка в коде открывает доступ к данным других арендаторов
  • Сотрудник компании A видит данные компании B
  • Итог: потеря клиентов, судебные иски, репутационный ущерб

арендатор

Использование хранилищ данных в AWS

Основы мультиаренды

  • Что такое мультиаренда?
    • Несколько клиентов используют общую инфраструктуру
  • Преимущества
    • Экономичность, упрощённое обслуживание
  • Сложность
    • Обеспечение полной изоляции данных

мультиаренда

Использование хранилищ данных в AWS

Паттерн: ключ раздела для каждого арендатора

  • Структура
    • tenantId как ключ раздела
    • tenantId включается в каждый элемент
  • Преимущества
    • Экономичность, масштабирование до тысяч арендаторов
  • Требования
    • Строгий контроль доступа, политики IAM

ключ

Использование хранилищ данных в AWS

Паттерн: отдельные таблицы для каждого арендатора

  • Структура
    • Отдельная таблица для каждого арендатора
  • Преимущества
    • Лучшая изоляция, упрощённое соответствие требованиям
  • Недостатки
    • Сложность управления, ограничения на количество таблиц

раздельные таблицы

Использование хранилищ данных в AWS

Паттерн: отдельные базы данных для каждого арендатора

  • Структура
    • Отдельная база данных для каждого арендатора
  • Преимущества
    • Полная изоляция, индивидуальные настройки
  • Недостатки
    • Высокие затраты, операционные накладные расходы

база данных

Использование хранилищ данных в AWS

Ключи условий IAM для изоляции арендаторов

  • dynamodb:LeadingKeys
    • Ограничивает доступ по ключу раздела
  • Пример политики
    • «Разрешить, если tenantId = tenant-123»
  • Применение
    • AWS применяет политику на уровне API

политика блокировки

Использование хранилищ данных в AWS

Эшелонированная защита

  • Уровень 1: Приложение
    • Проверка tenantId в коде
  • Уровень 2: Политика IAM
    • Ключи условий обеспечивают изоляцию
  • Уровень 3: Структура базы данных
    • Физическое разделение по ключу раздела

эшелонированная защита

Использование хранилищ данных в AWS

Тестирование и валидация

  • Тест межарендного доступа
    • Попытка чтения данных другого арендатора
    • Должна завершаться ошибкой AccessDeniedException
  • Журнал аудита
    • CloudTrail фиксирует все попытки доступа
  • Регулярные проверки
    • Анализ политик IAM и паттернов доступа

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

Использование хранилищ данных в AWS

Поздравляем!

  • Хранилища данных AWS: DynamoDB, S3, ElastiCache, OpenSearch
  • Проектирование и оптимизация: структура таблиц, оптимизация хранения
  • Защита данных: шифрование, управление секретами, изоляция арендаторов

курс завершён

Использование хранилищ данных в AWS

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

Использование хранилищ данных в AWS

Preparing Video For Download...