AWS CLI μέσω MFA

Στη συνέχεια θα ακολουθήσουν οδηγίες για τη ρύθμιση του AWS MFA και, στη συνέχεια, εγκατάσταση και διαμόρφωση του AWS CLI.

Δυστυχώς, αυτή η υποχρεωτική διαδικασία μου πήρε τη μισή εργάσιμη μέρα. Για να μην χάνουν πολύτιμο χρόνο οι άλλοι ανασφαλείς χρήστες AWS 😉, όπως εγώ, στα ασήμαντα, αποφάσισα να συγκεντρώσω οδηγίες.

Ακόμη και για τη ρύθμιση λογαριασμού sandbox ΣΠΙ Αυτό είναι συνήθως μια υποχρεωτική απαίτηση. Έτσι είναι με εμάς.

Ρύθμιση MFA

  1. Σετ συμβατή εφαρμογή για κινητά
  2. Παω σε Κονσόλα AWS
  3. Τα διαπιστευτήρια ασφαλείας μου -> Εκχώρηση συσκευής MFA
    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 <одноразовый пароль>

Ελπίζω ότι αυτή η οδηγία θα σας βοηθήσει να αποφύγετε μακροχρόνιες περιπλανήσεις μέσω της επίσημης τεκμηρίωσης 😉

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο