A seguir está o guia para a configuração do AWS MFA e a instalação e configuração do AWS CLI.
Infelizmente, eu gastei meio dia de trabalho nesse procedimento obrigatório. Para que outros usuários do AWS não tão confiantes 😉 como eu mesmo, não percam tempo precioso com o básico, decidi elaborar este guia.
Mesmo para uma conta sandbox, a configuração é, na maioria das vezes, um requisito obrigatório. Assim é aqui.
Configuração do MFA
- Instale
- Acesse
- -> Atribuir Dispositivo MFA

- Dispositivo MFA Virtual

- Siga as instruções na tela


- O dispositivo virtual está pronto

Instalação do AWS CLI
Configuração do perfil nomeado
- -> Criar chave de acesso

- Copie a chave para a área de transferência. Ela será necessária na próxima etapa
$ aws configure --profile
AWS CLI via MFA
- Copie o ARN do dispositivo virtual

aws sts get-session-token --profile --serial-number --token-code
O código de uso único deve ser obtido do aplicativo móvel configurado anteriormente.- O comando retornará um JSON, cujos campos individuais devem ser inseridos nas variáveis de ambiente AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN
Decidi automatizar através do ~/.bash_profile
Para analisar o JSON, este script requer .
#!/usr/bin/env bash
aws_login() {
session=$(aws sts get-session-token "$@")
echo "${session}"
AWS_ACCESS_KEY_ID=$(echo "${session}" | jq -r '.Credentials.AccessKeyId')
export AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY=$(echo "${session}" | jq -r '.Credentials.SecretAccessKey')
export AWS_SECRET_ACCESS_KEY
AWS_SESSION_TOKEN=$(echo "${session}" | jq -r '.Credentials.SessionToken')
export AWS_SESSION_TOKEN
}
alias aws-login-dev='aws_login --profile <имя dev профиля> --serial-number <ARN виртуального устройства> --token-code '
alias aws-login-prod='aws_login --profile <имя prod профиля> --serial-number <ARN виртуального устройства> --token-code 'Uso:
$ aws-login-devEspero que este guia ajude você a evitar longas buscas na documentação oficial 😉
Fonte: habr.com







