Quais permissões do IAM eu preciso para iniciar instâncias do EC2 com o chef knife?

7

P1: Estou tentando criar um usuário no console do IAM AWS que tenha permissões restritas apenas para iniciar novas instâncias usando o método knife ec2. Atualmente, apenas o acesso completo com a política "Acesso total ao Amazon EC2" funciona. Criar usuário e conceder instâncias de início / parada e descrever imagens não funciona.

Q2: como eu posso depurar isso

ERROR: Fog::Compute::AWS::Error: UnauthorizedOperation => You are not authorized to perform this operation.

e rastrear qual exata permissão eu preciso. (-V -V -V não funcionou)

    
por Andrei Mikhaltsov 16.11.2012 / 12:04

3 respostas

7

Q1: Eu tive que depurar o gem knife-ec2 para descobrir as permissões mínimas de IAM necessárias para iniciar uma instância do EC2. Aqui está a política mínima:

{
  "Statement": [
    {
      "Sid": "Stmt123",
      "Action": [
        "ec2:RunInstances",
        "ec2:DescribeInstances",
        "ec2:DescribeKeyPairs",
        "ec2:DescribeImages",
        "ec2:CreateTags",
        "ec2:DescribeTags"
      ],
      "Effect": "Allow",
      "Resource": [
        "*"
      ]
    }
  ]
}

Por favor, note que o Sid deve ser único.

Q2: Meu conhecimento de Ruby é bastante limitado, portanto, possivelmente não há uma maneira conveniente de depuração. Pessoalmente eu usei binding.pry como depurador. Consulte o seguinte artigo para obter mais informações.

    
por 27.02.2013 / 16:59
3

Você precisará permitir RunInstances .

    
por 24.11.2012 / 14:23
0

Eu tive que permitir o acesso em IAM ao usuário do qual estamos usando "ID de acesso" e "Chave de acesso secreta"

    
por 17.03.2014 / 16:53