Автоматическое назначение ролей EC2

Автоматическое назначение ролей EC2

Пытаюсь немного лучше понять ресурсы/концепции AWS IAM. Я знаю, что есть способ настроить EC2 (возможно, через его базовый AMI или шаблон запуска), чтобы при первом запуске ему автоматически назначались правильная роль/разрешения для вещей, к которым экземпляр должен иметь доступ. Например, если я знаю, что серверу программного обеспечения, работающему на этом экземпляре, потребуется доступ для чтения/записи S3, я должен иметь возможность настроить все так, чтобы мне не нужно было подключаться по SSH к этому экземпляру и настраивать файл ~/.aws/credentials.

Мойпониманиев том, чтоПользователииРолиявляются ресурсами IAM, которые составляют аутентифицируемые удостоверения. Это означает, что вы можете дать пользователю/роли набор учетных данных, и эти учетные данные затем могут аутентифицироваться в AWS и идентифицировать себя. Я считаю, что рекомендуется давать людям ресурс пользователя, а программному обеспечению — ресурс роли. Таким образом, у меня будет свой собственный пользователь AWS IAM, и этот пользователь будет иметь учетные данные, которые я введу в веб-консоль или CLI для получения доступа к AWS. А моему серверу (который будет развернут в AWS) будет предоставлена ​​роль AWS IAM, например ( myapp-server-dev), и эта роль будет иметь учетные данные, которые сервер затем сможет предоставить API AWS для аутентификации.

Мойпониманиев том, чтоГруппыпредставляют собой просто наборы пользователей и/или ролей, используемые с целью назначения этим пользователям/ролям определенных наборов разрешений.

Мойпониманиеэто IAMПолитикиявляются этими наборами разрешений, и вы прикрепляете/привязываете политики к пользователям, ролям и/или группам, чтобы предоставить им разрешения на использование различных сервисов/ресурсов AWS.

Мойпониманиеэто IAMПрофили экземпляровкак-то привязать экземпляр EC2 к роли, но именно здесь и кроется моя главная путаница.

Наконец, это мойпониманиечто для того, чтобы сделать так, чтобы:

  • Я создаю экземпляры EC2; и
  • Этот экземпляр EC2 автоматически получает доступ к нужным сервисам/ресурсам AWS без необходимости вручную устанавливать файлы учетных данных на экземпляре через SSH...

...чтобы это произошло, мне нужно:

  1. Создайте роль для экземпляра EC2 и любых других экземпляров, на которых будет запущено однородное серверное программное обеспечение (имеющее одинаковые требования к авторизации).
  2. СоздатьПрофиль экземплярадля экземпляра EC2, привязанного к этой роли
  3. ПрикрепитьПолитикак этой роли (или любой группе, членом которой является роль), которая предоставляет ей доступ к соответствующим услугам/ресурсам

Итак, во-первых, если что-то из того, что я сказал выше, неточно, пожалуйста, начните вносить некоторые исправления/уточнения в курс дела для меня! Если я правильно все понял, то мой вопрос здесь:как и где связать данный экземпляр EC2 с профилем экземпляра IAM, и как/где связать этот профиль с ролью?

решение1

«Профиль экземпляра IAM» — это роль, если вы используете консоль.

Вы связываете его при создании экземпляра в разделе «Дополнительные сведения».

Скриншот консоли AWS, на котором показан экран «Дополнительные сведения».

За кулисами AWS создает для вас профиль экземпляра. Если вы используете командную строку или API, вы можете создать их отдельно, если хотите; см.https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.htmlдля получения подробной информации.

Связанный контент