Настройка AWS Landing Zone / Control Tower

Мультиаккаунтная инфраструктура быстро обрастает ручными правками: доступы расходятся, новые окружения готовятся неделями. Мы настраиваем AWS Landing Zone и Control Tower под ключ: от проектирования управляющего контура до передачи готовых политик и схем доступа. Контур передаём с документацией, поэтому новый аккаунт подключается по шаблону, а не вручную.
Часто задаваемые вопросы

AWS Control Tower: где ломается ручная настройка аккаунтов

Аккаунты, созданные руками, расходятся предсказуемо: первые два-три похожи, дальше начинается зоопарк. В одном включено шифрование хранилища и журналирование в общий архив, в другом — нет, в третьем правила писались под конкретную задачу и никто их не пересматривал. На десяти аккаунтах это ещё держится в голове, на сорока — нет.

Изоляция сред страдает первой. Границу между боевым и тестовым контуром держит не архитектура, а дисциплина инженера: пока правило доступа живёт в чек-листе, рано или поздно тестовый сервис получает доступ к боевым данным. Права разъезжаются тем же способом — роли создавались в разное время под разные задачи, и уже никто не скажет, зачем оставлено широкое разрешение.

Цена проявляется на аудите и при масштабировании. Чтобы ответить на вопрос «в каких аккаунтах выключен журнал доступа», их приходится обходить по одному; новый аккаунт сверяют с эталоном вручную; откат неудачного изменения превращается в отдельную работу. AWS Control Tower закрывает именно этот слой: описывает целевую структуру подразделений, применяет единый профиль настроек к каждому аккаунту и фиксирует отклонения от него.

Разбираем, где ручная настройка ломается чаще всего и что управляемая мультиаккаунтная среда делает вместо неё.

Что даёт управляемый мультиаккаунтный контур

<cite>AWS Control Tower</cite> задаёт эталонную конфигурацию для всех аккаунтов и следит за её соблюдением — вокруг этого строится управляемый контур. Внутри него каждый новый аккаунт появляется уже с сетью, журналированием, политиками доступа и мониторингом, а не собирается вручную по чек-листу.

Первый измеримый эффект — единый вход. Сотрудник получает одну учётную запись и роли под задачи вместо набора ключей в каждом аккаунте; права выдаются через каталог групп, поэтому приём и увольнение — одна операция, а не обход десятка консолей.

Второй — онбординг аккаунта. Подключение нового контура по регламенту занимает час-два против нескольких дней ручной сборки, при этом состав эталона одинаков для продуктивных, тестовых и песочных аккаунтов, так что расхождения между средами не накапливаются.

Третий — контроль отклонений. Изменение, сделанное руками в консоли, попадает в отчёт о расхождениях и либо откатывается автоматически, либо оформляется как исключение с владельцем и сроком. Доля аккаунтов, живущих вне эталона, падает с десятков процентов до единиц, а неучтённые контуры без журналов перестают появляться в принципе.

Четвёртый — скорость реакции. Инцидент разбирается по единым журналам и метрикам сразу по всем аккаунтам, поэтому локализация занимает десятки минут вместо часов, а целый класс отказов — прямые правки в продуктивной среде общими ключами и живые доступы уволившихся — уходит из статистики.

Варианты построения контура: AWS Control Tower и ручная сборка

Выбор подхода — это компромисс между скоростью старта и степенью контроля над каждым правилом. Управляемый сервис, например AWS Control Tower, разворачивает базовый контур готовыми шаблонами: учётные записи, журналирование действий, зоны аудита и запреты на опасные операции включаются сразу.

Ручная сборка на декларативных описаниях даёт полную свободу, но каждое правило и шаблон аккаунта пишутся, тестируются и сопровождаются силами вашей команды. Ниже — три варианта, между которыми обычно выбирают.

Вариант Когда подходит Ограничения
Управляемый сервис с готовыми шаблонами аккаунтов Десятки однотипных аккаунтов, нужен предсказуемый старт, требования закрываются базовым набором правил Часть настроек меняется только через сам сервис; нестандартные правила приходится добавлять поверх
Самописные политики и собственная сборка Унаследованная инфраструктура, свои требования к сети и доступам, свой порядок вывода изменений Каждое правило пишется и тестируется вручную, сопровождение целиком ложится на вашу команду
Гибрид: управляемый сервис плюс свои правила поверх Аккаунты стандартные, но есть отдельные требования — сегментация сети, свои политики, зоны аудита Нужно следить, чтобы обновления сервиса не перетирали собственные правила

Чистую ручную сборку берут редко: чаще стартуют на управляемом сервисе и дописывают свои правила поверх. Ограничение у всех вариантов общее — правила должны жить в репозитории, а отклонения от шаблонов выявляться автоматически. Иначе контур расходится с реальностью за пару месяцев, и любой из подходов перестаёт что-либо гарантировать.

Этапы внедрения: от аудита до передачи контура

Порядок этапов здесь важнее их содержания. Если проектировать иерархию подразделений после включения AWS Control Tower, перенос аккаунтов пересоздаёт роли, рвёт историю журналирования и требует повторной проверки политик. Поэтому идём от инвентаризации к передаче, фиксируя состояние контура на каждом шаге.

  1. Аудит аккаунтов. Собираем реестр: владелец, назначение, активные сервисы, связи с внешними системами. На этом шаге всплывают осиротевшие аккаунты и прод-нагрузки, живущие в общих подразделениях.
  2. Схема иерархии. Проектируем дерево подразделений под модель команд и сред: отдельно песочницы, отдельно прод, отдельно изолированный лог-архив. Схему согласуем до включения — перекладка после запуска дороже.
  3. Настройка базового контура. Разворачиваем AWS Control Tower, привязываем аккаунты к организационной структуре, включаем централизованный сбор журналов. Архив пишется в отдельный аккаунт, недоступный для правки из рабочих.
  4. Политики и роли. Ограничения вешаем на уровне подразделений: запрет отключения аудита, фиксация разрешённых регионов, закрытие публичных хранилищ. Роли выдаём по наименьшим правам, отдельно для людей и для сервисов.
  5. Доступы. Связываем каталог пользователей с наборами прав, чтобы выдача и отзыв доступа шли заявкой, а не ручным созданием ключей. Сервисные ключи уводим в хранилище секретов.
  6. Проверка перед передачей. Прогоняем сценарии: создание аккаунта по заявке, попытка выйти за рамки политики, отзыв доступа, запись журналов и доставка оповещений.
  7. Передача контура. Отдаём документацию по иерархии и политикам, регламенты типовых операций, карту владельцев. Остаёмся на связи, пока ваша команда не начнёт проводить изменения самостоятельно.

Политики доступа, сервисные роли и схемы: что передаём

Передаём не только работающий контур, но и всё, что нужно для его самостоятельного сопровождения. Конфигурации, схемы и политики лежат в репозитории рядом с описанием инфраструктуры, а принятые решения зафиксированы в документации. Ниже — состав пакета для AWS Control Tower.

  • Конфигурация базового контура (landing zone) — параметры управляющего аккаунта, список разрешённых регионов, набор правил-ограничителей, подключённые сервисы аудита и централизованного логирования.
  • Схема иерархии аккаунтов — карта организационных подразделений с назначением каждого: продуктивные среды, приёмка, песочница, общие сервисы, лог-аккаунт. Плюс правило, по которому новый аккаунт попадает в нужное подразделение.
  • Политики доступа — наборы разрешений по типовым профилям (администратор, разработчик, аудитор, только чтение), ограничения на уровне подразделений, условия по источнику входа и обязательной второй фактор.
  • Сервисные роли — роли автоматического создания аккаунтов, кросс-аккаунтного доступа для аудита и сбора логов; для каждой описаны минимально необходимые права и границы доверия.
  • Описание контура как кода — инфраструктура воспроизводится из репозитория: изменение проходит ревью, попадает в историю версий, откат конфигурации — обычная операция над коммитом.
  • Регламент проверок — расписание контроля расхождений с эталоном, порядок реакции, ответственные, правила согласования временных исключений.
  • Документация контура — карта аккаунтов и сетей, матрица доступа, порядок подключения нового аккаунта, выдачи прав и разбора инцидентов.

Кейс: контур на 40 аккаунтов без ручных правок настроек

Контур собирали под четыре десятка аккаунтов: продукты, среды разработки, аналитика, общие сервисы. До нас подключение нового аккаунта было ручным ритуалом — инженер проходил список проверок, заводил роли, включал сбор событий и сверял настройки глазами. На пятом-шестом аккаунте список расходился с реальностью, и отклонения копились тихо — до первой проверки или инцидента доступа.

Показатель До После
Подключение аккаунта 5-7 дней, три специалиста около часа, один инженер
Отклонения от эталона 30-40 находок за квартал 2-3, и те гасятся автоматически
Разбор инцидента доступа 3-4 часа ручной сверки ролей 20 минут по журналу и политике

Опорой стал AWS Control Tower плюс заранее согласованный набор эталонных настроек: правила доступа, границы сетей, обязательный сбор событий, запрет публичных хранилищ. Новый аккаунт разворачивается из шаблона и встаёт в общий контур сам, а расхождение с эталоном не ждёт ревизии — система возвращает настройку к заданной и пишет событие в общий журнал.

Ручные операции сократились не «в целом», а в конкретных точках: подключение перестало быть отдельным проектом, аудит — отдельной кампанией. Команда заказчика занимается продуктом, а не сверкой прав, и в любой момент видит, что именно зафиксировано в контуре.

Чем управляемые политики отличаются от ручных ограничений доступа?

Ручные ограничения — это набор отдельных запретов, расставленных по аккаунтам вручную. Появляется новый аккаунт или сервис — и правило привязывают заново по памятке, а через пару месяцев памятка расходится с реальностью: где-то ограничение забыли, где-то ослабили «на время», и границы полномочий определяет уже не решение, а память конкретного инженера.

Управляемые политики работают иначе: правило задаётся один раз на уровне организации и наследуется всеми аккаунтами, включая те, что появятся завтра. Ограничение действует снаружи аккаунта, поэтому снять его изнутри нельзя — даже полный администратор не поднимет свои права выше выставленной границы. В AWS Control Tower это ядро модели: аккаунты сразу рождаются внутри заданных рамок, а не донастраиваются постфактум.

Второе отличие — автоматическая проверка отклонений: система постоянно сверяет фактическую конфигурацию с эталонной и либо возвращает её к целевой, либо фиксирует расхождение в отчёте. Ручной набор ограничений при этом молчит — об отключённом журналировании или хранилище, открытом наружу, вы узнаёте из инцидента, а не из ежедневной сводки.

С точки зрения границ полномочий выигрыш в разделении ролей: платформенная команда держит общий контур и правила, продуктовые — свободно работают внутри своего и не задевают чужой. Расширение прав становится изменением в одном месте с предсказуемым эффектом на все аккаунты, а не серией локальных правок. Поэтому вопрос смещается с «сколько у нас запретов» на «кто и на каком уровне их задаёт».

Технические вопросы, которые задают перед стартом

Перед стартом обычно приходят с тремя вопросами: что делать с уже работающими аккаунтами, какой доступ нужен подрядчику и насколько жёсткими окажутся ограничения. Ниже — как это устроено в AWS Control Tower, без общих обещаний.

Можно подключить существующие аккаунты, не пересобирая их?

Да. Аккаунты, уже состоящие в AWS Organizations, регистрируются в Control Tower — пересоздавать их не нужно. Поверх применяется базовая конфигурация: логирование в архивный аккаунт, ограничительные политики, единый вход. Нюанс один: если в аккаунте есть стеки с совпадающими именами ресурсов, нужна сверка и переименование — разовая работа на этапе проектирования, а не миграция сервисов.

Какой доступ получает подрядчик?

Через отдельные роли в управляющем аккаунте, с единым входом и временными правами — постоянных ключей и общих учёток мы не используем. По умолчанию роль читающая, расширение прав согласуется отдельно и попадает в журнал. Доступ отзывается одной операцией, без смены паролей у команды заказчика.

Не заблокируют ли ограничительные политики рабочие операции?

Политики вводятся поэтапно: сначала в режиме наблюдения, затем на тестовой группе аккаунтов. Критичные сценарии — развёртывание, сетевые правила, резервное копирование — прогоняются на стенде до включения ограничений, поэтому регрессии в сборочных контурах ловятся до продакшена.

Что если модель управления окажется избыточной?

Аккаунт выводится из-под управления с сохранением нагрузок: базовая конфигурация снимается, политики корректируются. Решения остаются в документации, поэтому переход на другую схему не начинается с нуля.

С чего начать: обсуждаем задачу и план внедрения

План внедрения AWS Control Tower собирается не из шаблона, а из инвентаризации вашей текущей учётной структуры. Чтобы вернуться с оценкой задачи, а не общими соображениями, нужен минимальный, но конкретный вход — от перечня аккаунтов до требований, которые проверяет ваш аудит.

Что запрашиваем на старте:

  • Перечень аккаунтов и организаций: сколько их сейчас, как связаны между собой, какие заведены вручную и живут без владельца.
  • Схема ролей и доступов: кто сегодня администратор, через что выдаются права, есть ли сервисные учётные записи с постоянными ключами.
  • Требования безопасности: обязательные политики, запрещённые действия, состав и срок хранения логов.
  • Ограничения среды: используемые регионы, привязки к отдельным сервисам, легаси, которое нельзя переключать автоматически.
  • Ответственный за решение с вашей стороны: кто согласует изменения и в какие окна допустимо трогать рабочие аккаунты.
  • Точки интеграции: куда смотрим журналы и метрики, нужно ли связать новую структуру с текущим мониторингом и оповещениями.

В ответ присылаем план работ по этапам, схему целевой учётной структуры, набор защитных политик, порядок подключения аккаунтов и план отката. Условия старта фиксируем первым шагом — кто что делает, в какой последовательности и как проверяем результат на каждом этапе.

Наши компетенции:

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1542
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1393
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1368
  • Разработка логотипа компании B2B Advance
    Разработка логотипа компании B2B Advance
    815
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1139