AWS IAM
Identity and Access Management
IAM adalah sistem kunci, kartu akses, dan petugas keamanan untuk akun AWS: ia menentukan siapa boleh masuk, boleh melakukan apa, dan ke ruangan mana.
IAM sebagai Kunci Gedung AWS
Mulai dari analogi sebelum masuk definisi.
Bayangkan akun AWS seperti gedung besar berisi ruang server, brankas data, ruang tagihan, dan panel kontrol.
Di gedung biasa, tidak semua orang boleh masuk ke semua ruangan. Resepsionis boleh melihat daftar tamu, teknisi boleh masuk ruang mesin, tim keuangan boleh masuk ruang tagihan, tetapi tamu tidak boleh membuka brankas. IAM, singkatan dari AWS Identity and Access Management, melakukan hal yang sama untuk AWS: menentukan siapa yang boleh masuk, apa yang boleh dilakukan, dan ke resource mana akses itu berlaku.
IAM bukan layanan untuk menyimpan data aplikasi. IAM adalah layanan keamanan inti untuk mengelola identitas dan izin. Di level CLF-C02, kamu tidak perlu menjadi ahli menulis policy kompleks, tetapi kamu harus bisa membaca skenario dan memilih pola akses yang aman.
Root user seperti pemilik gedung yang punya semua kunci. IAM user seperti kartu pegawai. Group seperti departemen. Policy seperti daftar pintu yang boleh dibuka. Role seperti kartu akses sementara untuk tamu atau mesin.
Dua sifat IAM yang penting kamu ingat sejak awal: IAM adalah layanan global, bukan regional, sehingga user, group, role, dan policy yang kamu buat berlaku di seluruh Region tanpa perlu menyalinnya satu per satu. IAM juga gratis, tidak ada biaya tambahan untuk memakai layanan IAM itu sendiri. AWS menyebutnya secara eksplisit: IAM ditawarkan tanpa biaya tambahan. Lihat sumber resmi: AWS IAM FAQs.
AWS menempatkan IAM sangat penting karena domain Security and Compliance memiliki bobot besar di CLF-C02. Exam guide resmi CLF-C02 menempatkan domain Security and Compliance sebesar 30% dan Cloud Technology and Services sebesar 34%, jadi IAM sering muncul sebagai fondasi untuk banyak soal keamanan dan layanan.
Setiap section bergerak dari analogi, ke definisi, ke contoh nyata, lalu ke jebakan ujian. Jangan menghafal istilah secara mentah; pahami “kenapa” tiap pola dipilih, karena soal CLF-C02 hampir selalu berbentuk skenario, bukan definisi kamus.
Konsep Utama IAM
Istilah yang wajib hafal sebelum praktik.
IAM terdiri dari beberapa benda kecil yang bekerja bersama, seperti sistem akses kantor modern.
Root user
Identitas awal akun AWS dengan akses penuh ke semua resource dan pengaturan akun.
IAM user
Identitas jangka panjang di dalam akun AWS, biasanya untuk use case spesifik yang belum memakai federasi.
IAM group
Kumpulan IAM user agar policy bisa ditempel ke banyak user sekaligus.
IAM policy
Dokumen izin yang menjelaskan action apa yang diizinkan atau ditolak pada resource tertentu.
IAM role
Identitas yang dapat diasumsikan untuk mendapatkan kredensial sementara, bukan password permanen.
MFA
Multi-factor authentication menambahkan faktor kedua selain password, misalnya aplikasi autentikator atau security key.
Definisi paling sederhana: authentication menjawab “siapa kamu?”, sedangkan authorization menjawab “kamu boleh melakukan apa?”. IAM mengelola keduanya, tetapi inti ujian sering menanyakan authorization melalui policy, role, dan prinsip least privilege.
Satu istilah lagi yang menyatukan semuanya adalah principal. Principal adalah entitas yang melakukan request ke AWS: bisa root user, IAM user, IAM role yang sedang diasumsikan, atau federated user. Saat kamu membaca soal, ubah kalimatnya menjadi pertanyaan IAM: principal mana yang bertindak, action apa yang diminta, dan ke resource mana, lalu apakah ada policy yang mengizinkan tanpa ada yang menolak.
Untuk CLF-C02, hafalkan perbedaan user, group, policy, role, MFA, dan root user, lalu ingat dua sifat IAM: global dan gratis. Banyak soal berbentuk skenario pendek, bukan definisi kamus.
Users, Groups, dan Policies
Tiga komponen yang sering muncul di awal belajar IAM.
User adalah orang atau beban kerja, group adalah departemen, policy adalah aturan akses tertulis.
User
IAM user merepresentasikan identitas di akun AWS dan memiliki kredensial jangka panjang, misalnya password untuk console atau access key untuk akses programatik. AWS best practices saat ini mendorong penggunaan federation dan IAM Identity Center untuk manusia, lalu IAM user hanya untuk use case spesifik yang belum didukung federated users. Namun, untuk belajar dasar IAM, user tetap penting karena menjelaskan cara izin bekerja secara paling gamblang.
Group
Group memudahkan administrasi. Daripada menempel policy ReadOnlyAccess ke 20 user satu per satu, kamu membuat group Auditor, lalu menempel policy ke group itu. Saat user baru masuk tim audit, cukup masukkan ke group dan ia langsung mewarisi semua izinnya. Saat ia pindah tim, cukup keluarkan dari group. Inilah kenapa group membuat izin mudah dirawat: kamu mengelola izin di satu tempat, bukan di tiap orang.
Ada beberapa aturan group yang sering jadi jebakan. Group bukan identitas yang bisa login, ia hanya wadah. Group tidak bisa berisi group lain (tidak ada nested group). Satu user boleh menjadi anggota banyak group sekaligus, dan izinnya adalah gabungan dari semua group plus policy yang menempel langsung padanya.
Policy
Policy adalah dokumen izin berformat JSON. Prinsip utamanya adalah least privilege, yaitu memberi izin minimum yang dibutuhkan untuk menyelesaikan tugas, tidak lebih. Policy yang terlalu luas seperti AdministratorAccess untuk semua orang terlihat praktis di awal, tetapi berbahaya di dunia nyata dan hampir selalu menjadi jawaban yang salah di ujian.
Kenapa least privilege bukan sekadar slogan? Karena setiap izin yang kamu berikan adalah pintu yang bisa disalahgunakan, baik oleh penyerang yang mencuri kredensial maupun oleh kesalahan tangan sendiri. Jika seorang auditor hanya butuh membaca, lalu kredensialnya bocor, kerusakan terbatas pada “bisa dilihat”. Jika auditor itu punya AdministratorAccess, kebocoran yang sama bisa menghapus seluruh akun. Least privilege memperkecil “ledakan” saat sesuatu salah, bukan menyusahkan pekerjaan sehari-hari.
Setiap statement policy menjawab tiga pertanyaan: efeknya Allow atau Deny, action apa yang diatur, dan ke resource mana izin itu berlaku.
Contoh JSON policy singkat
Berikut satu policy yang mengizinkan membaca objek dari satu bucket S3 saja. Perhatikan kurung kurawal yang menandai awal dan akhir dokumen.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::laporan-keuangan/*"
}
]
}Mari bedah baris per baris agar JSON tidak terasa menakutkan:
"2012-10-17" adalah versi bahasa policy yang dipakai AWS, hampir selalu nilai ini; anggap saja stempel format, bukan tanggal yang perlu kamu ubah.
Daftar aturan. Satu policy bisa berisi banyak statement; di sini hanya ada satu, dibungkus dalam tanda kurung siku.
"Allow" berarti mengizinkan. Bila diganti "Deny", statement ini justru menolak, dan deny selalu menang melawan allow mana pun.
"s3:GetObject" adalah operasi API yang diatur, yaitu membaca isi satu objek S3. Format selalu layanan:Aksi.
"arn:aws:s3:::laporan-keuangan/*" adalah ARN target: semua objek di bucket laporan-keuangan, bukan semua bucket. Tanda bintang membatasi izin hanya ke isi bucket itu.
Inilah least privilege dalam wujud nyata: policy di atas hanya membolehkan s3:GetObject pada satu bucket. Ia tidak bisa menghapus objek (s3:DeleteObject), tidak bisa menyentuh bucket lain, dan tidak bisa membuat user IAM. Jika kebutuhan auditor cuma membaca, izin yang lebih besar dari ini adalah risiko tanpa manfaat.
Group bukan identitas yang bisa login, dan role bukan group. Group mengelompokkan user dan policy diwariskan ke anggotanya; sedangkan role diasumsikan untuk mendapatkan kredensial sementara, bukan untuk dijadikan tempat menampung user.
MFA dan Root User
Kunci utama harus disimpan paling aman.
Root user adalah pemilik seluruh gedung, jadi jangan dipakai untuk kegiatan harian.
Saat akun AWS pertama dibuat, root user memiliki akses penuh ke semua layanan dan resource, termasuk hal yang tidak bisa didelegasikan ke IAM user biasa seperti menutup akun atau mengubah AWS Support plan. AWS merekomendasikan root user tidak dipakai untuk tugas harian. Gunakan root user hanya untuk tugas tertentu yang memang memerlukan root, lalu amankan dengan password kuat dan MFA. Lihat sumber resmi: AWS, Root user best practices.
MFA menambahkan lapisan keamanan kedua. Password adalah sesuatu yang kamu tahu, sedangkan perangkat MFA adalah sesuatu yang kamu punya. Jika password bocor, penyerang tetap perlu faktor kedua yang ada secara fisik di tangan pemilik akun, sehingga kebocoran satu faktor saja tidak cukup untuk masuk.
Aktifkan MFA untuk root user, jangan buat access key untuk root user, dan gunakan akun administratif terpisah dengan izin yang dibatasi untuk pekerjaan sehari-hari.
Tipe MFA yang tersedia 2026
AWS kini mendukung tiga jenis perangkat MFA: passkey dan security key berbasis FIDO (misalnya YubiKey atau passkey bawaan perangkat), aplikasi autentikator virtual yang menghasilkan kode TOTP (misalnya Google Authenticator, Authy, atau Duo), dan hardware TOTP token fisik. Root user dan IAM user dapat mendaftarkan hingga delapan MFA device dari tipe mana pun, sehingga akun tidak terkunci hanya karena satu perangkat hilang. Lihat sumber resmi: AWS, Using MFA in AWS.
MFA berbasis SMS sudah dihentikan AWS untuk IAM. Jika ada materi lama yang menyebut “kirim kode lewat SMS” sebagai opsi MFA, abaikan; pilih passkey, aplikasi autentikator, atau hardware token.
Simultaneous sign-in
Di AWS Console, beberapa identitas bisa masuk di browser berbeda, profil browser berbeda, atau mode incognito. Dalam praktik belajar, ini membantu membandingkan pengalaman root user, admin, dan user terbatas secara berdampingan. Namun di pekerjaan nyata, jangan berbagi kredensial. Setiap orang harus punya identitas sendiri agar audit trail jelas dan bisa ditelusuri di CloudTrail.
Jika pertanyaan menanyakan cara mengamankan akun AWS paling awal, jawaban yang sering benar adalah aktifkan MFA pada root user dan hindari penggunaan root untuk tugas harian.
CLI, Access Keys, SDK, dan CloudShell
Cara program dan terminal berbicara dengan AWS.
Console seperti dashboard mobil, CLI seperti perintah langsung ke mesin, SDK seperti library untuk aplikasi.
AWS Management Console dipakai lewat browser. AWS CLI dipakai lewat terminal. AWS SDK dipakai oleh kode aplikasi. Ketiganya pada akhirnya memanggil API AWS yang sama, dan agar CLI atau SDK boleh memanggil API itu, mereka membutuhkan kredensial.
Access key adalah kredensial jangka panjang untuk menandatangani request programatik ke AWS CLI, AWS API, atau AWS SDK. Ia terdiri dari access key ID (semacam username) dan secret access key (semacam password). Karena access key jangka panjang berisiko bocor dan tidak otomatis kedaluwarsa, AWS merekomendasikan penggunaan role dan kredensial sementara bila memungkinkan.
AWS CLI
Cocok untuk admin yang ingin menjalankan perintah seperti membuat bucket, melihat instance, atau mengunduh laporan.
AWS SDK
Cocok untuk aplikasi yang perlu memanggil layanan AWS dari bahasa pemrograman seperti Python, JavaScript, Java, atau Go.
Access key
Berisi access key ID dan secret access key. Secret hanya bisa dilihat sekali saat dibuat, jadi perlakukan seperti password.
AWS CloudShell
Shell berbasis browser di AWS Console yang sudah memiliki AWS CLI dan memakai kredensial dari sesi console, tanpa perlu access key.
Jangan menaruh access key di GitHub, file publik, screenshot, atau chat. Jika bocor, nonaktifkan dan rotasi segera; lebih baik lagi, hindari access key statis dan pakai role.
Perintah yang aman untuk latihan
aws sts get-caller-identity
aws iam get-user
aws iam list-account-aliasesPerintah aws sts get-caller-identity berguna untuk memastikan identitas apa yang sedang dipakai CLI: ia mengembalikan account ID, user ID, dan ARN. Ini seperti melihat kartu akses yang sedang kamu pegang sebelum membuka pintu, sehingga kamu tidak salah mengira sedang memakai user terbatas padahal sebenarnya sedang sebagai admin.
IAM Roles dan Kredensial Sementara
Pola akses yang paling sering benar untuk layanan AWS.
Role seperti kartu akses tamu yang berlaku sementara dan otomatis dicabut saat waktunya habis.
IAM role tidak memiliki password atau access key permanen seperti user. Role diasumsikan (assume) oleh principal, misalnya layanan AWS, aplikasi, federated user, atau akun AWS lain. Setiap role punya dua bagian: trust policy yang menentukan siapa boleh mengasumsikannya, dan permissions policy yang menentukan apa yang boleh dilakukan setelah diasumsikan. Setelah role diasumsikan, AWS Security Token Service (STS) memberikan kredensial sementara dengan masa berlaku terbatas, lalu kredensial itu hangus sendiri.
Kenapa kredensial sementara lebih aman? Karena ia kedaluwarsa otomatis. Access key statis akan terus berlaku sampai seseorang ingat untuk mencabutnya; bila bocor hari ini dan baru ketahuan tiga bulan lagi, penyerang punya tiga bulan akses. Kredensial sementara dari STS hidup hanya dalam hitungan jam, jadi jendela penyalahgunaannya jauh lebih sempit. Sebagai gambaran, AssumeRole default-nya sekitar 1 jam (dapat dikonfigurasi hingga 12 jam tergantung pengaturan role), sementara token sesi seperti GetSessionToken default 12 jam dengan maksimum 36 jam. Untuk CLF-C02 kamu tidak perlu menghafal angka pastinya; cukup ingat polanya: sementara dan berumur pendek lebih aman daripada permanen.
Contoh paling penting: aplikasi di EC2 perlu membaca objek dari S3. Pemula mungkin ingin menyimpan access key di dalam server. Pola AWS yang lebih aman adalah membuat IAM role dengan izin S3 yang dibutuhkan, lalu menempelkan role itu ke EC2. AWS SDK dan CLI di instance dapat mengambil kredensial sementara secara otomatis melalui instance metadata, sehingga tidak ada access key yang pernah ditulis di kode atau di disk server.
- Punya kredensial tetap: password dan/atau access key.
- Kredensial berlaku terus sampai dicabut manual.
- Cocok untuk identitas manusia atau use case yang belum pakai federasi.
- Risiko lebih besar bila access key bocor dan lupa dirotasi.
- Tidak punya kredensial tetap; diasumsikan saat dibutuhkan.
- STS memberi kredensial sementara yang kedaluwarsa otomatis.
- Pilihan utama untuk layanan AWS dan akses lintas akun.
- Tidak ada access key untuk disimpan, bocor, atau dirotasi.
Jika layanan AWS perlu mengakses layanan AWS lain, jawaban yang paling sering benar adalah gunakan IAM role, bukan access key statis. “Service to service” hampir selalu memetakan ke “role”.
Contoh skenario nyata
EC2 membaca S3
Gunakan IAM role untuk EC2 dengan izin baca ke bucket tertentu, lalu lampirkan role ke instance.
Lambda menulis log
Gunakan execution role agar Lambda bisa menulis ke CloudWatch Logs tanpa kredensial tertanam.
Akun lain membaca data
Gunakan cross-account role yang trust policy-nya mengizinkan akun terpercaya untuk assume.
Karyawan login via IdP
Gunakan federation atau IAM Identity Center agar manusia memakai kredensial sementara, bukan IAM user manual.
Cara Kerja IAM Saat Request Datang
Alur sederhana dari login sampai izin diputuskan.
Setiap request AWS melewati pertanyaan dasar: siapa, mau apa, ke resource mana, dan apakah diizinkan.
Saat sebuah request sampai ke AWS, IAM tidak menebak. Ia menjalankan urutan evaluasi yang sama setiap kali. Memahami urutan ini membuat banyak soal CLF-C02 langsung jelas, karena jawaban yang benar biasanya mengikuti aturan ini, bukan intuisi.
Principal bisa berupa IAM user, role yang sedang diasumsikan, federated user, atau layanan AWS. Request membawa konteks: action apa dan resource mana.
AWS memastikan identitas valid melalui password, MFA, access key, token sesi, atau mekanisme federasi sebelum melihat izin.
IAM mengumpulkan identity-based policy, resource-based policy, permission boundary, dan service control policy organisasi bila ada.
Mulai dari default deny. Bila ada explicit deny di policy mana pun, request langsung ditolak. Bila tidak ada deny dan ada minimal satu allow yang cocok, request diizinkan.
Ada tiga aturan emas yang menjelaskan keputusan akhir, dan ketiganya layak kamu hafal:
1. Default deny
Secara bawaan semua request ditolak. Tanpa izin yang diberikan secara eksplisit, jawabannya selalu tidak (implicit deny).
2. Allow membuka
Sebuah allow dari minimal satu policy yang relevan diperlukan untuk mengubah default deny menjadi izin.
3. Explicit deny menang
Satu deny eksplisit di policy mana pun mengalahkan semua allow. Tidak ada allow yang bisa membatalkan deny.
Untuk CLF-C02, kamu cukup memahami tiga aturan ini. Detail evaluasi policy yang sangat dalam, seperti urutan tepat resource policy versus permission boundary, lebih cocok untuk level Associate atau Specialty. Yang penting kamu ingat: default deny, butuh allow, dan explicit deny mengalahkan allow. Lihat sumber resmi: AWS, Policy evaluation logic.
Bayangkan kartu akses yang harus diaktifkan dulu agar pintu terbuka (default-nya terkunci). Satu aturan berkata “boleh masuk ruang rapat”, tetapi aturan keamanan gedung berkata “dilarang masuk setelah jam 10 malam”; larangan eksplisit menang, dan pintu tetap terkunci.
Hands-on Konseptual
Walkthrough ringan tanpa harus menghafal semua klik console.
Tujuan hands-on IAM bukan klik cepat, tetapi memahami pola aman yang akan kamu pilih di ujian.
Latihan 1, buat user baca-saja
ReadOnlyBayangkan group ini untuk auditor yang hanya perlu melihat resource tanpa mengubahnya.
Gunakan managed policy yang sesuai untuk latihan, lalu pahami bahwa produksi sering butuh policy lebih spesifik seperti contoh JSON di section 03.
Tambahkan user ke group, lalu uji apakah user bisa melihat resource tetapi tidak bisa menghapusnya.
Tambahkan MFA untuk menunjukkan bahwa login console lebih aman daripada hanya password.
Latihan 2, pakai CloudShell untuk mengecek identitas
Gunakan CloudShell dari AWS Console sehingga tidak perlu memasang CLI di laptop.
aws sts get-caller-identityPerhatikan account, user ID, dan ARN untuk memahami identitas aktif.
Masuk dengan user berbeda di profil browser lain, lalu lihat perbedaan hasilnya.
Latihan 3, role untuk layanan
Pilih trusted entity berupa layanan AWS yang akan memakai role; ini mengisi trust policy.
Misalnya hanya membaca bucket tertentu seperti contoh s3:GetObject, bukan akses penuh ke semua S3.
Layanan mendapat kredensial sementara dari STS tanpa menyimpan access key di kode.
Setelah latihan, kamu harus bisa menjelaskan kenapa role lebih aman daripada access key statis untuk layanan AWS, dan kenapa least privilege memperkecil dampak saat kredensial bocor.
Security Tools untuk IAM
Alat audit ringan yang sering disebut di materi AWS dasar.
IAM bukan hanya membuat user dan policy, tetapi juga memeriksa apakah akses sudah aman dan tidak berlebihan.
IAM Credential Report
Laporan level akun yang mencantumkan status kredensial semua user: password, access key, dan MFA. Dapat dibuat maksimum sekali tiap 4 jam.
IAM Access Analyzer
Membantu menemukan akses eksternal yang tidak diinginkan, akses yang tidak terpakai, serta memvalidasi dan memeriksa policy.
Last accessed information
Menunjukkan kapan layanan terakhir dipakai oleh sebuah identitas, agar izin yang tidak pernah dipakai bisa dipangkas.
AWS CloudTrail
Merekam aktivitas API sehingga tim bisa menelusuri siapa melakukan apa, kapan, dan dari mana di akun AWS.
Credential report sangat berguna untuk pertanyaan audit dasar. Misalnya, “bagaimana melihat IAM user mana yang belum mengaktifkan MFA?” Jawaban yang masuk akal adalah menggunakan IAM credential report, yang merangkum status MFA, password, dan access key tiap user dalam satu file.
IAM Access Analyzer: gratis atau berbayar?
IAM Access Analyzer punya beberapa fungsi dengan model biaya berbeda, dan ini sering membingungkan saat melihat tagihan. External access analyzer (menemukan resource yang bisa diakses dari luar akun) dan policy validation bersifat gratis. Sementara itu, unused access analyzer (menandai izin yang tidak pernah dipakai) berbayar sekitar 0,20 USD per IAM role atau user per bulan, dan internal access analyzer berbayar sekitar 9 USD per resource yang dipantau per Region per bulan. Untuk CLF-C02 kamu tidak perlu hafal angkanya; cukup ingat bahwa Access Analyzer tidak sepenuhnya gratis dan IAM inti-nya yang gratis. Lihat sumber resmi: AWS, IAM Access Analyzer dan harga Access Analyzer.
Jika soal menanyakan laporan status password, access key, dan MFA untuk semua IAM user dalam satu akun, ingat IAM Credential Report. Jika soal menanyakan “siapa di luar akun yang bisa mengakses resource saya”, ingat IAM Access Analyzer.
Kesalahan Umum Pemula
Yang terlihat praktis, tetapi sering tidak aman.
Kesalahan IAM biasanya bukan karena AWS rumit, tetapi karena izin dibuat terlalu lebar sejak awal.
Memakai root untuk harian
Root user terlalu kuat untuk operasi biasa. Gunakan identitas admin terpisah dan simpan root untuk tugas khusus.
Memberi admin ke semua orang
AdministratorAccess memang cepat, tetapi melanggar least privilege dan memperbesar dampak kesalahan atau kebocoran.
Menyimpan access key di kode
Access key yang masuk repository bisa disalahgunakan. Gunakan role dan secret management yang tepat.
Tidak mengaktifkan MFA
Password saja tidak cukup untuk akun penting, terutama root dan identitas administratif.
Membuat user untuk aplikasi di EC2
Untuk EC2, Lambda, dan layanan AWS lain, role biasanya lebih tepat daripada user dengan access key.
Tidak meninjau izin lama
Izin yang tidak pernah dipakai tetap menjadi risiko. Gunakan last accessed info dan Access Analyzer untuk mengurangi permukaan serangan.
Jika kamu ragu, mulai dari izin kecil, uji, lalu tambah seperlunya. Jangan mulai dari izin besar lalu berharap nanti dirapikan; “nanti” jarang datang.
Best practice modern 2026
AWS kini menekankan beberapa pergeseran. Untuk manusia, pakai IAM Identity Center atau federation, bukan membuat IAM user manual satu per satu. Untuk workload dan layanan AWS, pakai IAM role, bukan access key jangka panjang. Bila kamu memakai AWS Organizations, ada fitur centralized root access yang memungkinkan management account menghapus kredensial root (password, access key, MFA) dari member account, bahkan akun baru di Organizations kini bisa dibuat tanpa kredensial root sama sekali. Untuk CLF-C02, cukup tahu arah besarnya: kurangi kredensial jangka panjang, hindari root, dan pakai identitas terpusat.
Jebakan Soal CLF-C02
Cara membedakan opsi yang mirip.
Soal IAM sering terasa mudah, tetapi opsi salahnya dibuat mirip dengan praktik nyata yang buruk.
Pola jebakan yang sering muncul
- User vs role: jika akses untuk layanan AWS, pilih role. Jika akses manusia dalam jumlah banyak, pikirkan federation atau IAM Identity Center.
- Root vs admin: root bukan untuk tugas harian. Admin user atau role tetap harus dibatasi sesuai kebutuhan.
- Password vs MFA: password kuat bagus, tetapi MFA adalah kontrol tambahan yang sangat dianjurkan, terutama untuk root.
- Access key vs temporary credentials: access key adalah kredensial jangka panjang, sementara role menghasilkan kredensial sementara dari STS.
- Policy luas vs least privilege: jawaban aman biasanya memberi izin minimum, bukan wildcard luas seperti AdministratorAccess.
- Explicit deny vs allow: bila ada deny eksplisit, ia menang; tidak ada allow yang bisa membatalkannya.
Contoh gaya pertanyaan
Aplikasi di EC2 harus membaca bucket S3 tertentu. Pilih IAM role untuk EC2 dengan izin baca ke bucket tersebut, bukan menyimpan access key dalam file konfigurasi.
Perusahaan ingin tahu user mana yang belum memakai MFA. Pilih IAM Credential Report, bukan billing report atau Trusted Advisor sebagai jawaban utama untuk status kredensial user.
Tim ingin memberi akses sementara ke akun lain. Pilih IAM role cross-account, bukan membagikan password atau access key.
Sebuah policy mengizinkan s3:* tetapi ada policy lain dengan explicit deny pada s3:DeleteObject. Hasilnya: user tetap tidak bisa menghapus objek, karena explicit deny mengalahkan allow.
Ringkasan & Tips Ujian
Peta ingatan cepat sebelum lanjut ke modul berikutnya.
IAM adalah fondasi keamanan AWS, jadi pahami pola aksesnya, bukan hanya hafal nama fiturnya.
Poin Penting
- IAM mengatur authentication dan authorization untuk identitas dan resource AWS; ia layanan global dan gratis.
- Root user punya akses penuh, harus diamankan dengan MFA, dan tidak digunakan untuk tugas harian.
- Group memudahkan pemberian policy ke banyak IAM user, tetapi group bukan identitas yang login dan tidak bisa nested.
- Policy menentukan izin lewat Effect, Action, dan Resource, dengan prinsip least privilege, yaitu izin minimum yang dibutuhkan.
- Role memberikan kredensial sementara dari STS dan menjadi pilihan aman untuk layanan AWS yang mengakses layanan lain.
- Access key adalah kredensial jangka panjang untuk akses programatik, jadi gunakan hati-hati dan pilih temporary credentials bila memungkinkan.
- Evaluasi izin: default deny, butuh allow, dan explicit deny selalu mengalahkan allow.
- MFA menggabungkan sesuatu yang kamu tahu dan sesuatu yang kamu punya; hingga delapan device per identitas, tanpa SMS.
- Credential report mengaudit status password, access key, dan MFA; Access Analyzer menemukan akses eksternal (gratis) dan akses tak terpakai (berbayar).
Pemetaan ke domain CLF-C02
Domain 2, Security and Compliance, 30%
IAM, MFA, least privilege, root user, evaluasi policy, credential report, dan role adalah materi inti domain ini.
Domain 3, Cloud Technology and Services, 34%
Role sering muncul saat layanan seperti EC2, Lambda, S3, dan CloudWatch perlu saling mengakses secara aman.
Domain 1, Cloud Concepts, 24%
Shared responsibility dan keamanan sebagai manfaat cloud sering memakai IAM sebagai contoh praktis.
Domain 4, Billing, Pricing, and Support, 12%
Akses billing tetap perlu izin IAM yang sesuai, jadi root bukan jawaban harian untuk melihat biaya.
Tips ujian cepat
- Jika melihat kata “AWS service needs access to another AWS service”, pikirkan IAM role.
- Jika melihat kata “human users at scale”, pikirkan federation atau IAM Identity Center, bukan membuat banyak IAM user manual.
- Jika melihat kata “root user”, cari jawaban tentang MFA, tidak dipakai harian, dan tidak membuat access key root.
- Jika melihat kata “minimum permissions”, jawabannya mengarah ke least privilege.
- Jika melihat kata “status MFA dan access key semua user”, ingat IAM Credential Report.
- Jika ada explicit deny dan allow bertemu, deny menang.
Untuk pemula CLF-C02, IAM bisa diringkas sebagai “siapa boleh melakukan apa, pada resource mana, dengan bukti akses yang seaman mungkin”, dengan default deny sampai ada allow yang jelas.