gera permissões para a implementação da pilha cloudformation

7

Tenho a pilha do CloudFormation, que é atualizada com frequência por um script (alterando as AMIs de origem para a configuração de inicialização). Eu adoraria tê-lo implementado pelo mesmo script, executado pelo papel de usuário / instância não privilegiado. Atualmente, todas as atualizações são feitas pelo usuário admin, com muito mais privilégios do que o necessário.

Minha abordagem inicial foi por tentativa e falha, ver em registros que a permissão está faltando e adicioná-lo um por um. Leva muito tempo e longe de ser produtivo.

Estou pensando que deve haver uma maneira de gerar uma lista de permissões com base no modelo do CloudFormation, além de permissões para atualizar a própria pilha.

Meu segundo pensamento é processar os logs do CloudTrail de implantação bem-sucedida para extrair ações e recursos de lá.

Pode ser que já exista uma maneira de fazer isso e eu estou re: Inventando a roda?

    
por stimur 19.11.2016 / 04:51

1 resposta

0

Seria melhor você fazer referência aos documentos do IAM para as ações do IAM necessárias para atualizar um recurso. Por exemplo, a atualização da propriedade ImageId do recurso LaunchConfiguration requer a substituição de o recurso LaunchConfiguration e, em seguida, o AutoScalingGroup deve ser atualizado com a nova LaunchConfiguration por meio do UpdateAutoScalingGroup ação.

Sugiro fazer referência direta aos documentos porque um script para gerar permissões para um modelo do CloudFormation poderia produzir uma lista de possíveis ações do IAM para cada recurso, mas, nesse ponto, você ainda precisa consultar a lista e dizer “para este recurso ( por exemplo, AutoScalingGroup) que ação (s) eu quero assumir? ”

O meu ponto de referenciar a documentação diretamente é mais rápido do que tentativa e erro e tão rápido quanto a ferramenta proposta.

Idéia muito interessante, porém, o que poderia ser mais rápido do que referenciar a documentação diretamente é uma extensão do editor que exibe possíveis ações para um tipo de recurso enquanto você visualiza seu modelo de CF. Eu tenho trabalhado em tal extensão recentemente, vou colar o link aqui se eu o completar.

    
por 09.06.2018 / 02:11