AWS CLI dengan IAM Identity Center
Cara menghubungkan CLI dan SDK di laptopmu ke AWS memakai kredensial yang berumur pendek dan diperbarui otomatis.
Intisari
aws configure ssomenulis profil ke~/.aws/config— tidak ada rahasia di~/.aws/credentials.- Bentuk yang direkomendasikan: SSO token provider, yaitu blok
[sso-session …]yang bisa dipakai ulang. aws sso loginmembuka browser; sesinya berlaku beberapa jam lalu tinggal login ulang.- boto3 membaca profil yang sama — tidak perlu konfigurasi terpisah untuk Python.
aws sts get-caller-identityadalah perintah pertama saat ada yang aneh: ia menjawab "aku ini siapa".
Satu kali setup
aws configure sso
Wizard-nya menanyakan lima hal. Siapkan portal URL dari materi IAM Identity Center:
| Pertanyaan | Isi |
|---|---|
| SSO session name | Nama bebas, mis. nurhadi — ini yang bisa dipakai ulang lintas profil |
| SSO start URL | https://d-xxxx.awsapps.com/start |
| SSO region | Region tempat Identity Center diaktifkan |
| SSO registration scopes | Biarkan default sso:account:access |
| CLI profile name | Nama profil, mis. belajar |
Hasilnya di ~/.aws/config — perhatikan bahwa tidak ada satu pun rahasia di sini:
[sso-session nurhadi]
sso_start_url = https://d-xxxx.awsapps.com/start
sso_region = ap-southeast-1
sso_registration_scopes = sso:account:access
[profile belajar]
sso_session = nurhadi
sso_account_id = 123456789012
sso_role_name = PowerUserAccess
region = us-east-1
output = json
Dua bentuk konfigurasi, pilih yang benar. Bentuk lama menaruh sso_start_url langsung
di dalam blok profil. Ia masih jalan, tapi tokennya tidak bisa diperbarui otomatis — kamu akan
lebih sering login ulang. Bentuk [sso-session] di atas adalah yang direkomendasikan.
Pemakaian harian
# login — membuka browser, konfirmasi kode, selesai
aws sso login --profile belajar
# aku ini siapa? (perintah diagnostik nomor satu)
aws sts get-caller-identity --profile belajar
# supaya tidak perlu --profile di setiap perintah
export AWS_PROFILE=belajar
aws s3 ls
aws bedrock list-foundation-models --region us-east-1 --query 'modelSummaries[].modelId' --output table
# selesai bekerja di komputer bersama
aws sso logout
Python memakai profil yang sama
import boto3
# Cara 1 — eksplisit, paling jelas dibaca
sesi = boto3.Session(profile_name="belajar")
bedrock = sesi.client("bedrock-runtime", region_name="us-east-1")
# Cara 2 — ikut AWS_PROFILE dari environment.
# Ini yang dipakai kode production, karena di Lambda tidak ada profil sama sekali:
# kredensial datang dari role, dan kode yang sama tetap jalan tanpa diubah.
bedrock = boto3.client("bedrock-runtime")
Latihan: konfigurasikan profil belajar, jalankan aws sts get-caller-identity,
lalu jalankan skrip Python tiga baris yang mencetak jumlah foundation model yang tersedia di
us-east-1. Kalau keduanya berhasil, laptopmu resmi tersambung ke AWS tanpa satu pun rahasia
tersimpan permanen.
Rangkuman ini sengaja dipangkas ke bagian yang dipakai di roadmap. Buka sumber aslinya saat kamu butuh detail lengkap atau referensi parameter.