Acesso ao console da AWS para terceiros usando contas cruzadas?

3

Existem duas empresas: Cliente e Contratada. Ambos têm contas da AWS. Estou procurando uma maneira simples, mas segura, de conseguir que o pessoal da equipe de contratados acesse o console da AWS do cliente. Sim, eu estou do lado do contratante.

As formas que me lembro até agora:

  • crie um usuário na conta do Cliente e forneça login / senha. Tanto quanto eu sei, não é recomendado. Além disso, pode ser uma dor de cabeça para a Contratada, que tem muitos clientes para gerenciar todas as credenciais e bastante desconfortável para alternar entre contas durante o dia de trabalho (o principal motivo).
  • federação. Possível armadilha: o cliente precisa adicionar o provedor de federação, se o fornecedor for o AD do contratado, então, para mim, não parece melhor do que apenas criar uma conta. Usar o terceiro (quarto?) Provedor de identidade de festa (google) não parece bom para mim porque minha paranoia protesta contra a exposição das credenciais da Contratada para uso interno apenas para serviço público BigBrother. Talvez eu esteja errado ou esteja faltando algo aqui, ficarei feliz em ouvir sua opinião bem fundamentada.
  • use o acesso a várias contas (recomendado).

O terceiro parece o mais correto, mas o problema é: até agora não consegui encontrar uma maneira de fazê-lo. Minhas descobertas: Como usar uma ID externa , < href="http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html"> Fornecendo acesso a contas da AWS [/] e Como ativar o acesso entre contas ao console . Nenhum deles está pronto para uso e, em vez disso, dá a ideia de onde seguir em frente. Também sei que a Rackspace tem sua própria solução para essa finalidade, mas não conseguiu encontrar o código.

Então, repito: estou procurando uma maneira simples, mas segura, de conseguir que o pessoal da equipe de contratados acesse o console do cliente da AWS. Terei todo o prazer em poupar esforços e não reinventar uma bicicleta. Você conhece / tem essa solução?

    
por Putnik 26.02.2017 / 21:24

1 resposta

0

Para fornecer acesso à conta cruzada, você precisa de uma função na conta do cliente. Vamos chamá-la de "contratada". Crie esta função na conta do cliente com as permissões necessárias e em AssumeRolePolicyDocument add:

{ "Statement": { "Action": "sts:AssumeRole", "Effect": "Allow" "Principal": { "AWS": [ arn:aws:iam::12345678910:user/contractor.user ] } } }

em que 12345678910 é o ID da conta do contratado.

Então, quando você fizer login na função de contratado, selecione "Trocar função" no canto superior direito, digite o nome da conta ou a ID da conta do cliente e digite o nome da função "contratante" e lança.

    
por 02.03.2017 / 13:02