Funções do IAM para aplicações que são executadas em instâncias do Amazon EC2 - Amazon EC2 Auto Scaling

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Funções do IAM para aplicações que são executadas em instâncias do Amazon EC2

Aplicativos executados em instâncias do Amazon EC2 precisam de credenciais para acessar outros Serviços da AWS. Para fornecer essas credenciais de uma maneira segura, use uma função do IAM. A função fornece permissões temporárias que a aplicação pode usar ao acessar outros recursos da AWS . As permissões da função determinam o que a aplicação tem permissão para fazer.

Para instâncias em um grupo do Auto Scaling, é necessário criar uma configuração de execução ou um modelo de execução e escolher um perfil de instância para associar às instâncias. Um perfil de instância é um contêiner para uma função do IAM que permite ao Amazon EC2 passar a função do IAM para uma instância quando ela é iniciada. Primeiro, crie uma função do IAM que tenha todas as permissões necessárias para acessar os AWS recursos. Depois, crie o perfil da instância e atribua a função a ele.

nota

Como prática recomendada, é altamente recomendável que você crie a função para que ela tenha as permissões mínimas para outras Serviços da AWS que seu aplicativo exige.

Pré-requisitos

Crie a função do IAM que a aplicação em execução no Amazon EC2 pode assumir. Escolha as permissões apropriadas para que a aplicação que receber a função possa fazer as chamadas de API específicas necessárias.

Se você usa o console do IAM em vez do AWS CLI ou um dos AWS SDKs, o console cria um perfil de instância automaticamente e dá a ele o mesmo nome da função à qual ele corresponde.

Para criar uma função do IAM (console)
  1. Abra o console IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação à esquerda, escolha Roles (Funções).

  3. Selecione Criar função.

  4. Em Select trusted entity (Selecionar entidade confiável), escolha AWS Service (Serviço).

  5. Para seu caso de uso, escolha EC2 e escolha Next (Próximo).

  6. Se possível, selecione a política a ser usada para a política de permissões ou escolha Create policy (Criar política) para abrir uma nova guia no navegador e criar uma nova política a partir do zero. Para obter mais informações, consulte Creating IAM policies (Criar políticas do IAM) no IAM User Guide (Guia do usuário do IAM). Depois de criar a política, feche essa guia e retorne à guia original. Marque a caixa de seleção ao lado das políticas de permissões que você deseja que o serviço tenha.

  7. (Opcional) Defina um limite de permissões. Este é um recurso avançado que está disponível para funções de serviço. Para obter mais informações sobre limites de permissões, consulte Limites de permissões para identidades do IAM no Guia do usuário do IAM.

  8. Escolha Próximo.

  9. Na página Name, review, and create (Nomear, revisar e criar), em Role name (Nome da função), insira um nome de função para ajudar você a identificar a finalidade dessa função. Esse nome deve ser exclusivo em sua Conta da AWS. Como outros AWS recursos podem fazer referência à função, você não pode editar o nome da função após sua criação.

  10. Reveja a função e escolha Criar função.

Permissões do IAM

Use uma política baseada em identidade do IAM para controlar o acesso ao novo perfil do IAM. A permissão iam:PassRole é necessária na identidade do IAM (usuário ou perfil) que cria ou atualiza um grupo do Auto Scaling usando um modelo de execução que especifica um perfil de instância.

O exemplo de política a seguir concede permissões para passar somente perfis do IAM cujo nome comece com qateam-.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::account-id:role/qateam-*", "Condition": { "StringEquals": { "iam:PassedToService": [ "ec2.amazonaws.com", "ec2.amazonaws.com.cn" ] } } } ] }
Importante

Para obter informações sobre como o Amazon EC2 Auto Scaling valida permissões para a ação iam:PassRole de um grupo do Auto Scaling que usa um modelo de execução, consulte Validação de permissões para ec2:RunInstances e iam:PassRole.

Criar um modelo de inicialização

Ao criar o modelo de execução usando o AWS Management Console, na seção Detalhes avançados, selecione a função no perfil da instância do IAM. Para ter mais informações, consulte Criar um modelo de execução usando configurações avançadas.

Ao criar o modelo de execução usando o create-launch-templatecomando do AWS CLI, especifique o nome do perfil da instância da sua função do IAM, conforme mostrado no exemplo a seguir.

aws ec2 create-launch-template --launch-template-name my-lt-with-instance-profile --version-description version1 \ --launch-template-data '{"ImageId":"ami-04d5cc9b88example","InstanceType":"t2.micro","IamInstanceProfile":{"Name":"my-instance-profile"}}'

Consulte também

Para obter mais informações para começar a aprender e usar funções do IAM para Amazon EC2, consulte: