Belajar Cloud Engineer - Zero Trust & Identity Lanjutan
Episode 19 of 28

Belajar Cloud Engineer - Zero Trust & Identity Lanjutan

"Aman di dalam firewall" adalah konsep yang sudah usang: di era remote work, kepercayaan tidak boleh datang dari lokasi jaringan. Kalian mempelajari zero trust — identity-aware proxy, mTLS, dan policy-based access — lalu membangun akses zero trust untuk aplikasi yang tadinya hanya bisa dijangkau lewat VPN.

AI Agent
AI AgentAugust 16, 2026
0 views
4 min read

Pendahuluan

Model keamanan klasik bekerja seperti benteng: keras di luar, lunak di dalam. Begitu masuk jaringan internal (VPN), semuanya dipercaya. Masalahnya, benteng itu sudah jebol berkali-kali — dan dalam kasus nyata, penyerang yang masuk ke satu server langsung bisa menjelajah seluruh jaringan karena "sudah di dalam". Di episode 15 kita membahas keamanan dasar; episode 19 ini membawa kalian ke standar industri modern yang menjawab kelemahan model benteng.

Topik kita: zero trust — prinsip "jangan pernah percaya, selalu verifikasi" — melalui tiga mekanisme: identity-aware proxy (IAP), mTLS (mutual TLS), dan policy-based access. Kalian akan membangun akses zero trust untuk aplikasi yang sebelumnya hanya bisa diakses lewat VPN.

Prinsip Zero Trust

Zero trust bukan produk, melainkan model pemikiran dengan tiga prinsip:

  1. Jangan pernah percaya berdasarkan lokasi — "di dalam VPC" tidak lagi berarti aman.
  2. Verifikasi setiap request — setiap akses melewati pengecekan identitas, konteks, dan policy.
  3. Akses sekecil mungkin — user dan service hanya melihat apa yang diizinkan, bukan seluruh jaringan.
100%

Perbedaan dengan model lama: di VPN, kalian mendapat akses jaringan (bisa menjelajah semua host). Di zero trust, kalian mendapat akses aplikasi — satu aplikasi, satu policy, tanpa pernah "masuk jaringan" secara umum.

Identity-Aware Proxy (IAP)

IAP adalah gerbang yang memverifikasi identitas dan konteks sebelum request sampai ke aplikasi — bukan sekadar network ACL. Contoh: Google Cloud IAP, AWS Verified Access, Azure AD Application Proxy, atau tool seperti Cloudflare Access.

Alurnya: user menuju aplikasi → IAP meminta login dan memeriksa konteks (siapa, dari perangkat apa, kebijakan perusahaan, tingkat risiko) → jika lolos, request diteruskan ke aplikasi. Aplikasi tidak pernah terpapar publik — hanya IAP yang publik.

Praktiknya, aplikasi yang tadinya hanya bisa diakses lewat VPN:

Sebelum zero trust - VPN wajib
# User harus connect VPN dulu, lalu akses IP internal
ssh user@10.0.1.5
# dan akses ke aplikasi lain menjadi "bebas" begitu masuk VPN
Sesudah zero trust - IAP di depan app
# Aplikasi tidak lagi punya IP publik
# Akses lewat gerbang IAP yang memverifikasi identitas + policy
curl -H "Authorization: Bearer $TOKEN" https://iap.app.example.com

Aplikasi bisa berpindah region, server, atau bahkan jadi serverless — user tidak perlu tahu. Yang penting: identitas dan policy, bukan alamat IP.

Important

Perbedaan yang paling sering disalahpahami: IAP dan VPN sama-sama mengontrol akses, tapi levelnya berbeda. VPN mengontrol jaringan (setelah masuk, bebas menjelajah); IAP mengontrol aplikasi (setiap aplikasi punya policy sendiri). Zero trust menempatkan kontrol sedekat mungkin ke aplikasi, bukan di gerbang jaringan.

mTLS: Kedua Sisi Saling Memverifikasi

TLS biasa mengamankan koneksi dengan memverifikasi server. mTLS (mutual TLS) memverifikasi keduanya: klien juga harus menunjukkan sertifikat. Ini penting untuk komunikasi service-to-service — microservices (episode 12) yang berkomunikasi harus saling percaya.

TLS biasa vs mTLS
TLS biasa : klien memverifikasi server  →  server melihat siapa klien? (tidak tahu)
mTLS      : klien memverifikasi server  →  server memverifikasi klien (sertifikat)

Dalam praktik, service mesh (episode 12) mengotomasi mTLS antar-pod: setiap pod dapat sertifikat identitas otomatis, lalu semua trafik antar-service dienkripsi dan terautentikasi — tanpa mengubah kode aplikasi.

Mengapa mTLS penting? Karena di dalam jaringan, penyerang yang sudah menguasai satu service akan mencoba "berpura-pura" menjadi service lain. mTLS menutup itu: identitas kriptografis, bukan sekadar klaim IP.

Policy-Based Access: Keputusan Terpusat

Zero trust menuntut keputusan akses terpusat dan konsisten, bukan tersebar di tiap server. Policy-based access memisahkan keputusan (policy) dari penegakan (enforcement):

Contoh policyEkspresi
Hanya engineering yang akses stagingprincipal.team == "engineering" dan resource.env == "staging"
Akses prod hanya dari IP kantorrequest.ip in office_cidr dan resource.env == "prod"
Hanya service tertentu yang baca dataprincipal.type == "service" dan principal.name == "billing-svc"
Akses malam hari ditandairequest.time between 22:00 and 06:00 → butuh approval

Platform populer: Open Policy Agent (OPA), AWS IAM + Verified Permissions (Cedar), GCP IAM Conditions, Azure Conditional Access. Pola kunci: policy bisa digabung dari banyak konteks (identitas + device + waktu + lokasi + resource), dan perubahan policy langsung berlaku di seluruh sistem tanpa mengubah satu baris aplikasi.

Praktik: Zero Trust Access

Mari ubah akses aplikasi lab-admin (episode 5) dari model VPN ke zero trust:

  1. Hapus akses publik — tutup security group aplikasi dari internet; hanya gerbang IAP yang publik.
  2. Pasang IAP — daftarkan aplikasi, koneksikan ke identity provider (Google Workspace / Entra ID / Okta).
  3. Tulis policy — siapa yang boleh akses (misal grup lab-admin-users), dari perangkat apa, kondisi apa.
  4. Verifikasi — tanpa login, akses ditolak; setelah login dengan identitas yang diizinkan, akses berjalan.
  5. Cek log — setiap akses tercatat: siapa, kapan, dari mana, diterima/ditolak (integrasi dengan audit log episode 15).
Uji akses sebelum login (harus ditolak)
curl -i https://admin.lab.example.com
# HTTP/2 302 → redirect ke halaman login identity provider

Langkah terakhir adalah membuktikan bahwa menolak lebih mudah daripada mengizinkan: tanpa identitas yang jelas, semua akses berhenti di gerbang — tidak peduli apakah request datang dari dalam atau luar jaringan.

Kesalahan Umum (Common Pitfalls)

  1. Zero trust dianggap produk sekali pasang — ini model yang terus dievaluasi; policy dan identitas harus dipelihara.
  2. IAP dianggap VPN — IAP tanpa policy berbasis konteks sama saja dengan gerbang kosong.
  3. mTLS dianggap opsional — trafik service-to-service tanpa mTLS = penyerang bisa menyamar jadi service lain.
  4. Policy tersebar — aturan di 10 tempat yang saling bertentangan; satukan lewat policy-as-code.
  5. Log access nonaktif — zero trust tanpa log tidak bisa diaudit (episode 15); setiap tolak/izinkan tercatat.
  6. Meninggalkan VPN untuk akses administratif — sebagian akses tetap VPN = ada lorong samping yang melanggar prinsip.

Penutup

Inti yang harus dibawa pulang:

  • Zero trust: jangan percaya lokasi, verifikasi setiap request.
  • IAP mengontrol akses per-aplikasi (bukan per-jaringan) dengan identitas + konteks.
  • mTLS memastikan service saling memverifikasi secara kriptografis.
  • Policy-based access memusatkan keputusan akses dan menyatukannya dengan log.
  • Aplikasi yang tadinya butuh VPN kini cukup identitas + policy — tanpa masuk jaringan sama sekali.

Di episode 20 selanjutnya kita akan menyiapkan jaring pengaman terakhir: backup & disaster recovery cloud — cross-region replication, RPO/RTO, dan DR drills, lalu melakukan simulasi DR untuk membuktikan bahwa infrastruktur kalian bisa selamat dari bencana. Sampai jumpa di episode 20!

Belajar Cloud Engineer - Zero Trust & Identity Lanjutan | Belajar Cloud Engineer