Skip to content

lenowds/aws-iam-ansible

Repository files navigation

ANSIBLE HERO

*Aqueles que mais resolvem problemas, são chamados de heróis.

O Projeto

Neste projeto estamos considerando que a empresa possui em média 100 pessoas na equipe de TI. Após análise estratégica, a empresa decidiu migrar para seus workloads para AWS. Estes usuários terão que ser criados, pois a equipe acessará a console para realizar as operações.

Este projeto tem por objetivo propor uma solução que atinja os requisitos da empresa, levando os usuários do seu ambiente On-premises para AWS de forma 100% automatizada utilizando Ansible.

Além de migrar estes usuários de forma automatizada, deverá associar as permissões aos grupos. Como uma melhor prática de segurança os usuários terão que ter o MFA – Autenticação por dois fatores (Multi-fator authentication) habilitado.

Mas o que é o Ansible?

É uma ferramenta super user-friendly utilizada para fazer a automação do gerenciamento de configuração em ambientes Cloud, especialmente com uma cultura DevOps. Além disso, o Ansible é muito poderoso devido ter o que chamamos de collections, que são espécie de plugins que consegue usar para fazer automações e conectar os seus scripts ou os seus playbooks.

Para ter uma experiência parecida comigo, estou aplicando meu playbook direto na console da AWS. O playbook deste projeto, pode ser aplicado a partir de qualquer vm ou no seu próprio laptop.

Requisitos

Com certeza ter uma conta na AWS, estar autenticado e dentro da AWS Console.

Criar um usuário com perfil de administrador e guardar a ACCESS KEY e SECRET ACCESS KEY. Como será aplicado o playbook na console da AWS, o usuário será do tipo programático e acesso na console.

Carregar as variáveis de ambiente AWS_ACCESS_KEY e AWS_SECRET_KEY passando as credenciais do usuário criado. Essa instrução deverá ser executada no terminal antes de executar o ansible playbook.

export AWS_ACCESS_KEY=SUA ACCESS KEY
export AWS_SECRET_KEY=SUA SECRET ACCESS KEY

Caso não esteja configurado as variáveis de ambiente ocorrerá o seguinte erro:

image-20211122213334161

python >= 2.6

No meu caso não foi preciso instalar, mas se precisar fica a dica: https://www.python.org/downloads/

Ansible >= 2.9

pip3 install ansible

boto

pip3 install boto

All Ready???

Depois que os arquivos do projeto foram clonados para dentro da console, vamos ao que interessa.

Aplicando o playbook que fará a leitura do arquivo csv, criará os grupos associando as políticas de acesso, inclusive a política de MFA. Essa política também será criada pelo Ansible.

Na console da AWS executar:

ansible-playbook aws-users-import.yml

Sugestões são bem vindas, e pra quem quiser me adicione no linkedin e vamos bater um papo.

Linkedin: https://www.linkedin.com/in/leniel-dos-santos-7813a924/

About

Users import with ansible

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages