Apa itu AWS IAM ?
Pendahuluan
Ada komponent di AWS yang memegang peranan penting dalam keamanan akun di AWS.
Namanya AWS Identity and Access Management (IAM).
Dengan IAM, kita dapat mengatur dengan detail :
- siapa saja yang bisa mengakses layanan dan sumber daya AWS yang kita miliki.
- dengan level akses seperti apa.
Bagaimana Cara Kerja IAM?
IAM bekerja dengan berfokus pada tiga komponen utama:
Identitas
Identitas di IAM bisa berupa pengguna (user) atau role.
User dibuat dan dikelola langsung di dalam akun AWS kita, dan memiliki akses permanen dengan kredensial login berupa access key dan secret access key.
Role adalah identitas temporary yang bisa di-attach ke resource tertentu, biasanya digunakan untuk keperluan aplikasi atau layanan lain yang membutuhkan akses ke AWS tanpa perlu dibuat pengguna tersendiri.
Policy
Policy di IAM berisi kumpulan izin yang menentukan apa saja yang bisa dilakukan oleh suatu identitas (user atau role) terhadap resource AWS.
Policy dibuat dengan detail, sehingga kita bisa mengatur dengan rinci tindakan apa saja yang dibolehkan dan resource mana saja yang bisa diakses oleh suatu identitas.
Resource
Resource di AWS adalah segala hal yang kita buat dan gunakan di layanan AWS, seperti :
- bucket di S3
- instance di EC2
- table di DynamoDB.
Dengan IAM, kita bisa menentukan policy mana saja yang berlaku untuk resource tersebut, sehingga tidak sembarang identitas bisa mengaksesnya.
Apa keuntungan Menggunakan IAM ?
Menggunakan IAM untuk mengontrol akses ke resource AWS , kita memiliki beberapa keuntungan:
- Keamanan yang Lebih Baik:
Dengan IAM, kita bisa menerapkan prinsip least privilege, yaitu pengguna hanya memiliki akses seperlunya terhadap resource AWS.
Hal ini meminimalisir resiko terjadinya kesalahan konfigurasi atau kebocoran kredensial yang bisa mengakibatkan resource kita diambil alih pihak tidak bertanggung jawab.
- Audit yang Lebih Mudah:
IAM menyediakan log aktivitas yang mencatat semua aksi yang dilakukan oleh user dan role terhadap resource AWS kita.
Dengan log ini, kita bisa melacak siapa saja yang mengakses resource tertentu dan apa yang mereka lakukan, sehingga memudahkan audit keamanan.
- Fleksibel dan Skalabel:
IAM bisa disesuaikan dengan kebutuhan keamanan kita.
Kita bisa membuat policy dengan level detail yang tinggi, sehingga akses bisa diatur dengan granularity yang baik.
Selain itu, IAM juga bisa digunakan untuk mengatur akses secara terpusat di banyak akun AWS melalui IAM Identity Center.