Mungkin kalo kalian udah pernah belajar cloud, atau ngatur AD (Active Directory), pernah denger kali ya, istilah IAM? Jadi IAM ini apa sih?

Apa itu IAM?

IAM (Identity and Access Management), itu singkatnya sistem untuk ngatur akses pengguna terhadap sebuah sumber daya. Misal dalam konteks cloud, kita kan ada akun root, yang bisa ngelakuin semua hal, tapi anjurannya sebenernya akun root ini jangan dipake. Dari akun root itu, kita harus ngebuat akun baru, lalu kita kasi izin yang cukup aja untuk pengguna itu untuk ngelakuin kerjaan dia. Ini disebut dengan principle of least privilege, atau sering juga disebut least priv.

Ide utama dari prinsip itu biar kalo akun itu kebobol, penyerang yang berhasil ngebobol ini juga masih terbatas, jadi dia gabisa semena-mena ambil alih seluruh infrastrukturnya. Untuk mewujudkan hal ini, perihal: membuat akun, ngasi izin ke akun, ngelepas izin dari akun, dan lainnya itu tugas dari IAM.

IAM ini terdiri dari 4A:

  • Admin
  • Authenticate
  • Authorize
  • Audit

Admin

Admin ini sebenernya cukup sederhana sih, singkatnya, ini sistem yang ngatur provisioning dan deprovisioning akun user. Jadi ngatur ngebuatin akun baru bagi pengguna, atau ngelepas akun yang udah ga dipake, mungkin karena usernya udah ga kerja disana, atau karena dia pindah divisi.

Authenticate

Misal ada bank, dan mereka nawarin layananan Safe Deposit Box. Agar pelanggannya sendiri bisa mengakses box mereka, sudah jelas harus dicek apakah mereka benar pemilik utamanya? Bisa saja dicek dari kartu akses, ataupun sidik jari, atau pin.

Secara umum, autentikasi adalah proses memastikan apakah identitas yang diberikan, sama dengan orang yang menggunakannya sendiri, “are you who you really say you are?”. Untuk mengetahui hal ini, juga dibagi menjadi beberapa metode juga:

  • What you have, mengacu pada benda yang kita miliki, seperti smartphone atau hardware key, seperti FIDO key atau Yubikey.
  • What you know, mengacu pada hal yang kita ketahui, seperti password, PIN, atau security question.
  • What you are, biasanya mengacu pada atribut yang kita miliki secara fisik. Contohnya, sidik jari, scan wajah, scan retina, dan sebagainya.

Dan kalau digabung, jadi MFA (Multi Factor Authentication), jadi misal bukan hanya diminta password, namun juga sidik jari.

Authorize

Setelah memastikan bahwa identitas yang diberikan, sesuai dengan siapa yang menggunakan sistemnya, IAM akan memberikannya izin sesuai dengan apa yang memang menjadi haknya. Contohnya, pada AWS, user A diberikan role untuk mengedit security group. Maka pada proses otorisasi, setelah user A berhasil login, ia akan mendapatkan izin untuk mengedit security group.

Audit

Singkatnya, audit ini gunanya buat mastiin ketiga A sebelumnya ini dilakukan dengan baik oleh sistem. Misal siapa yang onboarding, siapa yang memberikan izin, siapa yang approve? Biasanya jadi bisa dibuat laporan tertulis, juga memudahkan kepatuhan (compliance).

Penutup

Jadi, IAM bisa administrasi, ngatur pembuatan akun, pembuangan akun, autentikasi dan otorisasi, dari mastiin penggunanya beneran mereka dan bukan orang lain, sampai ngasi mereka kemampuan sesuai haknya. Dan terakhir, sistem itu juga memudahkan kepatuhan dengan bantu ngawasin seluruh aktivitas yang diatur disitu juga.

Nanti gw juga mau sekalian bahas sih, bedanya IAM dan PAM (Privileged Access Management), karena memang itu juga bisa jadi materi yang menarik. But until then, see ya.

Referensi:

Leave a Reply

Your email address will not be published. Required fields are marked *

Collaborative Insights from an Aspiring Engineer