AWS CLI iwwer MFA

Als nächst wäerte Instruktioune sinn fir AWS MFA opzestellen, an dann AWS CLI z'installéieren an ze konfiguréieren.

Leider huet dës obligatoresch Prozedur mech d'Halschent vu mengem Aarbechtsdag gedauert. Also datt aner onsécher AWS Benotzer 😉, wéi ech selwer, keng wäertvoll Zäit op der Trivial verschwenden, hunn ech beschloss Instruktiounen ze kompiléieren.

Och fir Sandbox Kont Astellung MFA Dëst ass normalerweis eng obligatoresch Ufuerderung. Esou ass et bei eis.

MFA Ariichten

  1. Installéieren kompatibel mobil App
  2. Géi op AWS Konsole
  3. Meng Sécherheet Umeldungsinformatioune -> MFA Apparat zouzeschreiwen
    AWS CLI iwwer MFA
  4. Virtuell MFA Apparat
    AWS CLI iwwer MFA
  5. Follegt d'Instruktioune um Écran
    AWS CLI iwwer MFA
    AWS CLI iwwer MFA
  6. Virtuell Apparat ass prett
    AWS CLI iwwer MFA

AWS CLI installéieren

https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html

Astelle vun engem genannte Profil

https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html

  1. Meng Sécherheet Umeldungsinformatioune -> Erstellt Zougang Schlëssel
    AWS CLI iwwer MFA
  2. Kopéiert de Schlëssel op Äre Clipboard. Dir wäert et am nächste Schrëtt brauchen
  3. $ aws configure --profile <your profile name>

AWS CLI iwwer MFA

  1. Kopéiert de virtuellen Apparat ARN
    AWS CLI iwwer MFA
  2. aws sts get-session-token --profile <имя профиля> --serial-number <ARN виртуального устройства> --token-code <одноразовый пароль>
    Dat eenzegt Passwuert muss aus der mobiler Applikatioun geholl ginn, déi virdru konfiguréiert ass.
  3. De Kommando wäert JSON erausginn, déi eenzel Felder vun deenen an déi entspriechend Ëmfeldvariablen ersat ginn AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN

Ech decidéiert automatiséieren duerch ~/.bash_profile
Fir JSON ze analyséieren, erfuerdert dëse Skript jq.

#!/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 '

Verbrauch:

$ aws-login-dev <одноразовый пароль>

Ech hoffen dës Instruktioun hëlleft Iech laang Wanderungen duerch déi offiziell Dokumentatioun ze vermeiden 😉

Source: will.com

Setzt e Commentaire