0Pricing
Cloud & IT Cert Prep · Урок

Межаккаунтные роли и политики ресурсов

Предоставляйте одной учётной записи ограниченный доступ к ресурсам другой.

«Межаккаунтные роли и политики ресурсов» — бесплатный урок Cloud & IT Cert Prep на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cloud & IT Cert Prep, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cloud & IT Cert Prep содержит 4 уроков всего.

Зачем нужен доступ между аккаунтами

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

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

Шаблон роли между аккаунтами

Наиболее распространённый шаблон — роль в целевом аккаунте, которую принимает субъект из исходного аккаунта.

  • Политика доверия роли указывает исходный аккаунт или субъект.
  • Исходный субъект вызывает AssumeRole и получает временные учётные данные.
  • Затем он действует в целевом аккаунте в пределах разрешений роли.

Две политики должны согласовываться

Для принятия роли между аккаунтами обе стороны должны разрешить это:

  • Политика доверия целевой роли разрешает доступ исходному субъекту.
  • Политика удостоверения исходного субъекта разрешает sts:AssumeRole для этой роли.

Если отсутствует хотя бы одно из этих разрешений, принятие роли завершается ошибкой. Эта двойная проверка часто встречается на экзамене.

Политики на основе ресурсов

Некоторые сервисы поддерживают политики на основе ресурсов, прикреплённые непосредственно к ресурсу, например политику корзины S3, политику ключа KMS или политику очереди SQS.

Они могут предоставлять доступ субъекту из другого аккаунта без принятия этим субъектом роли. Внешний аккаунт использует собственное удостоверение, а политика ресурса разрешает ему доступ.

{
  "Effect": "Allow",
  "Principal": { "AWS": "arn:aws:iam::444455556666:root" },
  "Action": "s3:GetObject",
  "Resource": "arn:aws:s3:::shared-logs-bucket/*"
}

Цепочка ролей и политики ресурсов

Выбирайте механизм в зависимости от сервиса:

  • Для сервисов без политики ресурсов (EC2, большинство API) используйте роль между аккаунтами.
  • Для S3, KMS, SNS, SQS, Lambda и других сервисов политика ресурсов может предоставить прямой доступ между аккаунтами.

Политики ресурсов позволяют избежать дополнительного перехода через AssumeRole.

Защита с помощью внешнего идентификатора

Предоставляя сторонней организации (например, поставщику SaaS) доступ между аккаунтами, добавьте условие с внешним идентификатором в политику доверия.

Поставщик должен передать уникальное секретное значение при принятии роли. Это предотвращает проблему замешанного заместителя, когда злоумышленник обманом заставляет поставщика обратиться к аккаунту другого клиента.

Минимальные полномочия между аккаунтами

Роли между аккаунтами должны предоставлять минимально необходимый доступ с ограничением по конкретным ресурсам и действиям.

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

Централизованные сервисные аккаунты

Часто определённую функцию централизуют в одном аккаунте, к которому другие обращаются через роли; например, аккаунт безопасности принимает роли только для чтения во всех аккаунтах рабочих нагрузок.

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

Совместное использование с RAM

AWS Resource Access Manager (RAM) позволяет совместно использовать определённые ресурсы, например подсети или шлюзы Transit Gateway, между аккаунтами одной организации.

RAM предназначен для совместного использования самого ресурса, а не для предоставления разрешений API на работу с ним. Он дополняет роли и политики ресурсов при совместном использовании сети и инфраструктуры.

Аудит путей между аккаунтами

Доступ между аккаунтами расширяет поверхность доверия, поэтому регулярно проводите его аудит.

  • CloudTrail записывает каждый вызов AssumeRole и API-вызов между аккаунтами.
  • IAM Access Analyzer выявляет политики ресурсов, предоставляющие доступ за пределами вашего аккаунта.

Проверяйте эти сведения, чтобы своевременно обнаруживать непреднамеренное совместное использование.

Объединяем всё вместе

Чтобы безопасно связать аккаунты, предпочитайте роли для вычислительных ресурсов и API, политики ресурсов для сервисов хранения и обмена сообщениями и всегда применяйте минимальные полномочия, используя внешний идентификатор для сторонних организаций.

Никогда не передавайте долгосрочные ключи между аккаунтами.

Быстрая проверка

Проанализируйте доступ между аккаунтами.

Итоги

Вы узнали, как безопасно связывать аккаунты.

  • Для ролей между аккаунтами требуются и политика доверия, и политика удостоверения исходного субъекта.
  • Политики на основе ресурсов предоставляют прямой доступ для таких сервисов, как S3 и KMS.
  • Используйте внешний идентификатор для сторонних организаций и проводите аудит с помощью Access Analyzer и CloudTrail.

Часто задаваемые вопросы

Урок «Межаккаунтные роли и политики ресурсов» бесплатный?

Да — полный текст урока «Межаккаунтные роли и политики ресурсов» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cloud & IT Cert Prep, подпишись на CoddyKit PRO. Курс Cloud & IT Cert Prep содержит 4 уроков всего.

Чему я научусь в уроке «Межаккаунтные роли и политики ресурсов»?

Предоставляйте одной учётной записи ограниченный доступ к ресурсам другой. Ты практикуешь Cloud & IT Cert Prep с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Cloud & IT Cert Prep?

Предыдущий опыт не требуется. Cloud & IT Cert Prep на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Межаккаунтные роли и политики ресурсов»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Cloud & IT Cert Prep?

Да. Каждый урок Cloud & IT Cert Prep включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Единый вход с IAM Identity Center
  2. SAML, OIDC и федерация веб-идентичностей
  3. Межаккаунтные роли и политики ресурсов
  4. Аудит общего доступа с помощью IAM Access Analyzer
← Назад к Cloud & IT Cert Prep