Keamanan bukan fitur yang ditambahkan belakangan — ia keputusan arsitektur. Episode ini membahas security by design, defense in depth, model zero trust (jangan percaya apa pun di jaringan), pemetaan kontrol ke CIS/NIST, dan praktik threat modeling untuk arsitektur

Di episode 6 kita membangun jaringan dengan kontrol akses — tetapi keamanan tidak berhenti di firewall. Episode ini menggeser pandangan kalian: keamanan bukan daftar fitur yang ditambahkan setelah sistem selesai, melainkan keputusan arsitektur yang membentuk setiap lapisan.
Ada alasan praktis: memperbaiki kerentanan arsitektural jauh lebih mahal daripada memperbaikinya saat desain. Sebuah database yang diletakkan di subnet publik (episode 6) tidak bisa "diamankan" dengan menambahkan firewall — solusinya adalah memindahkan posisinya di arsitektur. Itulah mengapa security harus by design, sejak diagram pertama.
Prinsip intinya: pertimbangan keamanan menjadi bagian dari trade-off arsitektur di episode 3, bukan langkah approval di akhir. Ketika memilih arsitektur, tanyakan sejak awal:
Jika jawaban atas pertanyaan ini belum jelas, arsitektur belum selesai.
Jangan bergantung pada satu lapisan pertahanan. Jika satu lapisan gagal, lapisan berikutnya menahan. Lapisan-lapisan khas dalam arsitektur cloud:
1. Identity & Access → siapa boleh masuk (IAM)
2. Network → siapa boleh bicara ke siapa (segmen, SG)
3. Application → validasi input, dependency aman
4. Data → enkripsi at rest & in transit
5. Detection → log, audit, alert (observability)
6. Response → incident response, backup, recoveryContoh nyata: database tidak cukup hanya "dilindungi security group". Tambahkan: user database terpisah dengan least privilege, enkripsi data di disk, log audit akses, backup ber-encrypt, dan alert jika ada login mencurigakan. Satu lapisan bisa gagal — sisanya tetap menahan.
Note
Prinsip kunci defense in depth: setiap lapisan harus mampu menahan kegagalan lapisan di bawahnya. Jika network rule terbuka lebar karena human error, encryption dan IAM masih melindungi data. Desain seperti ini yang membedakan arsitektur aman dari sekadar "pakai firewall".
Model keamanan lama (perimeter) menganggap semua yang ada di dalam jaringan terpercaya. Zero trust membaliknya: tidak ada entitas yang dipercaya secara default — baik di dalam maupun luar jaringan. Setiap akses harus diverifikasi.
Tiga pilar zero trust:
Praktik nyata zero trust di cloud:
Aman secara teknis dan mampu dibuktikan adalah dua hal berbeda. Framework compliance memberi bahasa untuk pembuktian:
| Framework | Fokus |
|---|---|
| CIS Controls | Daftar kontrol keamanan praktis, diurutkan prioritas |
| NIST CSF | Framework manajemen risiko keamanan (Identify, Protect, Detect, Respond, Recover) |
| ISO 27001 | Sistem manajemen keamanan informasi (audit-able) |
| PCI DSS | Khusus data kartu pembayaran |
Tugas arsitek: memetakan kontrol arsitektur ke kontrol framework. Contoh mapping sederhana:
| Kontrol Arsitektur | CIS | NIST CSF |
|---|---|---|
| IAM + least privilege | CIS 5 (access control) | PR.AC-1 |
| Enkripsi data at rest | CIS 3 (data protection) | PR.DS-1 |
| Logging & audit | CIS 8 | DE.CM |
| Backup & recovery | CIS 11 | PR.IP-4 / RC |
Mapping ini bukan pekerjaan audit tahunan — ia menjadi design input dari awal. Episode 20 akan membahas arsitektur untuk sertifikasi lebih dalam.
Cara paling praktis menemukan celah desain: threat modeling. Pendekatan umum adalah STRIDE — kategorikan ancaman per komponen:
Komponen: API Gateway + Lambda + DynamoDB
Spoofing → API key + authn user; JWT signature dicek
Tampering → input divalidasi; request di-log
Repudiation → setiap akses punya audit trail
Info disclosure → data di-encrypt at rest; response tidak bocorkan detail
DoS → rate limiting di gateway; scaling otomatis
Elevation → Lambda pakai role scope sempit, bukan adminOutput threat model adalah daftar risiko + mitigasi yang bisa ditindaklanjuti. Masukkan hasilnya ke ADR (episode 3) dan jadikan bahan review berkala.
Inti yang harus dibawa pulang:
Di episode 8 selanjutnya kita akan membahas reliability & resilience design — fault tolerance, high availability, pola disaster recovery, dan error budget ala SRE. Sampai jumpa di episode 8!