AWS CLI trwy MFA

Nesaf fydd cyfarwyddiadau ar gyfer sefydlu AWS MFA, ac yna gosod a ffurfweddu AWS CLI.

Yn anffodus, cymerodd y weithdrefn orfodol hon hanner fy niwrnod gwaith i mi. Fel na fydd defnyddwyr AWS ansicr eraill 😉, fel fi, yn gwastraffu amser gwerthfawr ar y dibwys, penderfynais lunio cyfarwyddiadau.

Hyd yn oed ar gyfer gosod cyfrif blwch tywod MFA Mae hyn fel arfer yn ofyniad gorfodol. Dyma fel y mae gyda ni.

Sefydlu MFA

  1. Gosod ap symudol cydnaws
  2. Mynd i Consol AWS
  3. Fy Manylion Diogelwch -> Neilltuo Dyfais MFA
    AWS CLI trwy MFA
  4. Dyfais MFA Rhithwir
    AWS CLI trwy MFA
  5. Dilynwch y cyfarwyddiadau ar y sgrin
    AWS CLI trwy MFA
    AWS CLI trwy MFA
  6. Mae dyfais rithwir yn barod
    AWS CLI trwy MFA

Gosod AWS CLI

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

Sefydlu proffil a enwir

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

  1. Fy Manylion Diogelwch -> Creu allwedd mynediad
    AWS CLI trwy MFA
  2. Copïwch yr allwedd i'ch clipfwrdd. Bydd ei angen arnoch yn y cam nesaf
  3. $ aws configure --profile <your profile name>

AWS CLI trwy MFA

  1. Copïwch y ddyfais rithwir ARN
    AWS CLI trwy MFA
  2. aws sts get-session-token --profile <имя профиля> --serial-number <ARN виртуального устройства> --token-code <одноразовый пароль>
    Rhaid cymryd y cyfrinair un-amser o'r cymhwysiad symudol a ffurfiwyd yn gynharach.
  3. Bydd y gorchymyn yn allbynnu JSON, a rhaid amnewid y meysydd unigol i'r newidynnau amgylchedd cyfatebol AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN

Penderfynais i awtomeiddio drwodd ~/.bash_profile
I ddosrannu JSON, mae angen y sgript hon 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 '

Defnydd:

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

Gobeithio y bydd y cyfarwyddyd hwn yn eich helpu i osgoi crwydro hir trwy'r ddogfennaeth swyddogol 😉

Ffynhonnell: hab.com

Ychwanegu sylw