Jak skonfigurować AWS CLI do pracy z wieloma kontami
W tym zadaniu dowiesz się, jak skonfigurować AWS CLI do pracy z wieloma kontami AWS.
Realizując to zdanie, wykonasz wszystkie niezbędne kroki do tego, aby pracować z AWS korzystając z AWS CLI.
Dodatkową możesz wykorzystać moją ulubioną aplikacje Leapp do zarządzania konfiguracją i sesjami AWS IAM Identity Center.
Video tutorial
Co jest Ci potrzebne do wykonania tego zadania:
- Odpalona i działające organizacja AWS (AWS Organizations),
- Skonfigurowana usługa AWS IAM Identity Center (dawniej AWS Single Sign-On),
- Dostęp do kont AWS, do których chcesz skonfigurować AWS CLI,
KROKI DO WYKONANIA TEGO ZADANIA
KROK 1: Instalacja AWS CLI
W pierwszym kroku zainstaluj, na swoim komputerze AWS CLI. W zależności od systemu operacyjnego proces będzie wyglądał trochę inaczej.
Wszystkie niezbędne informacje znajdziesz pod poniższym linkiem:
https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
Efektem końcowym powinna być możliwość wywoływania komend z wiersza poleceń jak np.:
aws --version
Polecam również skonfigurować sobie auto-uzupełnianie poleceń. Opis jak to zrobić znajdziesz tutaj:
https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-completion.html
KROK 2: Integracja awc cli z AWS IAM Identity Center
W tym kroku wykorzystasz “natywny” element konfiguracji aws cli z AWS IAM Identity Center (będę naprzemiennie stosował również skrót SSO). Aby podłączyć się do swojej “instancji” AWS IAM IC, w pierwszym kroku wywołaj poniższe polecenie:
aws configure sso
Następnie podaj wszystkie niezbędne informacje jak:
- SSO session name (Recommended): – dowolna nazwa dla konfiguracji instancji SSO.
- SSO start URL: tutaj podajesz URL do Twojej instancji SSO. Jest to link, przez który logujesz się z przeglądarki internetowej do konsoli graficznej.
- SSO region: tutaj wybierasz region, w którym masz skonfigurowaną swoją instancję AWS IAM Identity Center.
- SSO registration scopes: zostaw domyślne.
W dalszym kroku nastąpi przekierowanie do przeglądarki celem zalogowania się do SSO. Jeśli całym proces przebiegnie prawidłowo, wróć do command line. W oknie powinna pojawić się lista kont AWS, do których masz dostęp poprzez SSO.
- Wybierze z listy konto, dla którego chcesz stworzyć profil cli.
- CLI default client Region: tutaj możesz ustawić domyślny region, w którym chcesz wykonywać polecenia (np. eu-west-1).
- CLI default output format: tutaj możesz określić format, w jakim będą zwracane rezultaty wykonywanych komend.
- CLI profile name: tutaj określasz nazwę profilu dla tego konta. Nazwa ta powinna być dość łatwa do przywoływania 😉. Dla każdego konta będzie to inna nazwa. Wywołując dowolne polecenie, będziesz potem wybierał profile (czyli konto AWS) wpisując:
polecenie --profile nazwa_profilu
Na koniec sprawdź, czy wszystko działa, wykonując przykładowe polecenie:
aws s3 ls --profile nazwa_profilu
Generalnie, na koniec całego procesu w plikach konfiguracji aws cli (np. ~/.aws/config) powinno być coś w stylu:
[profile my-dev-profile]
sso_session = my-sso
sso_account_id = 123456789011
sso_role_name = readOnly
region = us-west-2
output = json
[sso-session my-sso]
sso_region = us-east-1
sso_start_url = https://my-sso-portal.awsapps.com/start
sso_registration_scopes = sso:account:access
Gratulacje ✅
W ten sposób udało Ci się dodać pierwszy profil (konto AWS). Teraz jeśli chcesz dodać kolejne konta, musisz powtórzyć powyższe kroki.
KROK 3: Logowanie z wykorzystaniem aplikacji Leapp
To jest opcjonalny krok, w którym możesz skorzystać z zewnętrznej aplikacji do zarządzania połączeniami do Twojego środowiska AWS. Jest to zamiennik tego, co robiliśmy w kroku 2-gim.
Aby zainstalować Leapp, wejdź na stronę i pobierze pakiet instalacyjny.
Po zainstalowaniu wystarczy uruchomić aplikację i z menu po lewej stronie w sekcji Integrations dodać konfigurację swojej instancji AWS IAM Identity Center.

Konfiguracja jest zbliżona do tego co robiliśmy w kroku 2-gim, czyli:
- Alias to ta sama nazwa co ➡️ SSO session name,
- Portal Url: ➡️ SSO start URL,
- Aws Region: ➡️ SSO region,
- Auth. method: tutaj określasz, czy logowanie do SSO chcesz wykonywać “wewnątrz” aplikacji czy przez przeglądarkę (tak jak w cli),
GOTOWE!
Teraz zaloguje się na jedno z kont i zobacz czy wszystko działa. Wywołaj jakąś przykładową komendę:
aws s3 ls
🏆 Gratulacje! Udało Ci się skonfigurować aws cli.
Teraz możesz ruszać do pracy z command line 🫡
Poprzednia
CloudArmor – Bezpieczne środowisko AWS
CloudArmor to usługa, która pomoże Ci zbudować bezpieczne środowisko AWS, które spełnia najwyższe standardy ochrony danych.
Jeśli szukasz wsparcia w procesie budowania bezpiecznego środowiska AWS, sprawdź szczegóły.