AWS CLI kroz MFA

Nato sledi navodila za nastavitev AWS MFA ter nadaljnjo namestitev in nastavitev AWS CLI.

Na žalost mi je ta obvezni postopek vzel pol dneva dela. Da bi drugim negotovim uporabnikom AWS 😉, kot sem bil sam, prihranil dragocen čas na preprostem, sem se odločil pripraviti navodilo.

Tudi za sandbox račun je nastavitev MFA običajno obvezna zahteva. Pri nas je tako.

Nastavitev MFA

  1. Namestite združljivo mobilno aplikacijo
  2. Pojdite na AWS konzolo
  3. Moje varnostne akreditive -> Dodelitev naprave MFA
    AWS CLI kroz MFA
  4. Virtualna naprava MFA
    AWS CLI kroz MFA
  5. Sledite navodilom na zaslonu
    AWS CLI kroz MFA
    AWS CLI kroz MFA
  6. Virtualna naprava je pripravljena
    AWS CLI kroz MFA

Namestitev AWS CLI

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

Nastavitev imenovanega profila

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

  1. Moje varnostne akreditive -> Ustvari dostopno ključ
    AWS CLI kroz MFA
  2. Kopirajte ključ v odložišče. Potreben bo v naslednjem koraku
  3. $ aws configure --profile

AWS CLI kroz MFA

  1. Kopirajte ARN virtualne naprave
    AWS CLI kroz MFA
  2. aws sts get-session-token --profile --serial-number --token-code
    Enkratno kodo morate vzeti iz mobilne aplikacije, ki ste jo nastavili prej.
  3. Naredil bo JSON, posamezna polja pa je treba vnesti v ustrezne spremenljivke okolja AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN

Odločil sem se avtomatizirati prek ~/.bash_profile
Za obdelavo JSON ta skripta zahteva 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 '

Uporaba:

$ aws-login-dev

Upam, da vam bodo ta navodila pomagala, da se izognete dolgotrajnemu iskanju po uradni dokumentaciji 😉

Izvor: habr.com

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster