Voici les instructions pour configurer AWS MFA, ainsi que pour l'installation et la configuration de l'AWS CLI.
Malheureusement, cette procédure obligatoire m'a pris la moitié d'une journée de travail. Pour éviter que d'autres utilisateurs AWS hésitants 😉 comme moi ne perdent un temps précieux sur des choses banales, j'ai décidé de rédiger un guide.
Même pour un compte sandbox, la configuration est généralement une exigence obligatoire. C'est le cas ici.
Configuration de MFA
- Installez
- Connectez-vous à
- -> Attribuer un appareil MFA

- Appareil MFA virtuel

- Suivez les instructions à l'écran


- L'appareil virtuel est prêt

Installation de l'AWS CLI
Configuration d'un profil nommé
- -> Créer une clé d'accès

- Copiez la clé dans le presse-papiers. Elle sera nécessaire à l'étape suivante.
$ aws configure --profile
AWS CLI via MFA
- Copiez l'ARN de l'appareil virtuel

aws sts get-session-token --profile --serial-number --token-code
Le code à usage unique doit être obtenu à partir de l'application mobile configurée précédemment.- La commande renverra du JSON, dont les champs individuels doivent être insérés dans les variables d'environnement AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN
J'ai décidé d'automatiser cela avec ~/ .bash_profile
Pour interpréter le JSON, ce script nécessite .
#!/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 'Utilisation :
$ aws-login-dev J'espère que ce guide vous aidera à éviter de longues errances dans la documentation officielle 😉
Source : habr.com







