Di seguito troverai le istruzioni per configurare AWS MFA e per installare e configurare AWS CLI.
Sfortunatamente, per me questa procedura obbligatoria ha richiesto metà della mia giornata lavorativa. Per evitare che altri utenti insicuri di AWS 😉 come me perdano tempo prezioso su cose banali, ho deciso di redigere questa guida.
Anche per un account sandbox, la configurazione è, in genere, un requisito obbligatorio. Per noi è così.
Configurazione MFA
- Installa
- Accedi al
- -> Assegna dispositivo MFA

- Dispositivo MFA virtuale

- Segui le istruzioni sullo schermo


- Il dispositivo virtuale è pronto

Installazione di AWS CLI
Configurazione di un profilo nominato
- -> Crea chiave di accesso

- Copia la chiave negli appunti. Ti servirà nel passo successivo
$ aws configure --profile
AWS CLI tramite MFA
- Copia l'ARN del dispositivo virtuale

aws sts get-session-token --profile --serial-number --token-code
La password usa e getta deve essere presa dall'app mobile configurata in precedenza.- Il comando restituirà un JSON, e i singoli campi devono essere inseriti nelle corrispondenti variabili ambientali AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN
Ho deciso di automatizzare tramite ˜/.bash_profile
Per analizzare il JSON questo script richiede .
#!/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-devSpero che questa guida ti aiuti a evitare di vagare per la documentazione ufficiale 😉
Fonte: habr.com







