AWS CLI тавассути MFA

Минбаъд дастурҳо оид ба таъсиси AWS MFA ва сипас насб ва танзим кардани AWS CLI хоҳанд буд.

Мутаассифона, ин тартиби ҳатмӣ нисфи рӯзи кории маро гирифт. Барои он ки дигар корбарони ноамн AWS 😉, мисли ман, вақти гаронбаҳоро ба чизҳои ночиз беҳуда сарф накунанд, ман тасмим гирифтам дастурҳоро тартиб диҳам.

Ҳатто барои танзими ҳисоби қуттии қум ВКХ Ин одатан талаботи ҳатмист. Бо мо ахвол хамин тавр аст.

Таъсиси ВКХ

  1. Set барномаи мобилии мувофиқ
  2. Гузаштан ба Консол AWS
  3. Маълумоти бехатарии ман -> Дастгоҳи ВКХ-ро таъин кунед
    AWS CLI тавассути MFA
  4. Дастгоҳи виртуалии MFA
    AWS CLI тавассути MFA
  5. Дастурҳои дар экран бударо иҷро кунед
    AWS CLI тавассути MFA
    AWS CLI тавассути MFA
  6. Дастгоҳи виртуалӣ омода аст
    AWS CLI тавассути MFA

Насб кардани AWS CLI

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

Насб кардани профили номбаршуда

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

  1. Маълумоти бехатарии ман -> Калиди дастрасӣ эҷод кунед
    AWS CLI тавассути MFA
  2. Калидро ба буфери худ нусхабардорӣ кунед. Ба шумо дар қадами оянда лозим мешавад
  3. $ aws configure --profile <your profile name>

AWS CLI тавассути MFA

  1. Дастгоҳи виртуалии ARN-ро нусхабардорӣ кунед
    AWS CLI тавассути MFA
  2. aws sts get-session-token --profile <имя профиля> --serial-number <ARN виртуального устройства> --token-code <одноразовый пароль>
    Пароли якдафъаина бояд аз барномаи мобилии қаблан танзимшуда гирифта шавад.
  3. Фармон JSON-ро мебарорад, ки майдонҳои инфиродии онҳо бояд ба тағирёбандаҳои муҳити мувофиқ AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN иваз карда шаванд.

Ман қарор додам, ки тавассути автоматизатсия ~/.bash_profile
Барои таҳлили JSON, ин скрипт талаб мекунад 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 '

Истифода:

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

Умедворам, ки ин дастур ба шумо дар пешгирӣ кардани саргардонии тӯлонӣ тавассути ҳуҷҷатҳои расмӣ кӯмак мекунад 😉

Манбаъ: will.com

Илова Эзоҳ