Belajar Cloud Architect - Network Security & Encryption
Episode 19 of 28

Belajar Cloud Architect - Network Security & Encryption

Data tidak pernah lebih aman dari jalur dan penyimpanannya. Episode ini merancang keamanan data secara menyeluruh: TLS/mTLS untuk komunikasi, KMS untuk kunci enkripsi, secrets management tanpa hardcode, dan segmentasi jaringan dengan kontrol granular

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

Pendahuluan

Di episode 7 kita membangun zero trust dan di episode 18 merancang identitas. Sekarang tinggal satu pertanyaan: bagaimana melindungi data itu sendiri — saat transit, saat diam, dan saat diproses. Inilah lapisan terakhir defense in depth (episode 7): bahkan jika identitas dan jaringan gagal, data harus tetap tidak terbaca.

Episode ini membahas empat pilar keamanan data: TLS/mTLS untuk komunikasi, KMS untuk mengelola kunci, secrets management untuk kredensial, dan segmentasi jaringan dengan kontrol granular.

TLS dan mTLS

TLS: Enkripsi Semua Komunikasi

TLS melindungi data saat transit antara client dan server — mencegah penyadapan dan tampering. Aturan pertama arsitektur data: semua komunikasi memakai TLS, tanpa pengecualian — termasuk antar-service di dalam VPC, bukan hanya dari internet.

Contoh: enforce TLS di load balancer
listener:
  protocol: HTTPS
  port: 443
  defaultAction: forward
  certificates:
    - arn:aws:acm:ap-southeast-1:123456789:certificate/abc123
  redirect: # HTTP → HTTPS
    protocol: HTTPS
    port: 443

Perhatikan redirect: arsitektur harus memaksa HTTPS, bukan sekadar menyediakannya. Endpoint yang menerima HTTP plaintext adalah celah.

mTLS: Saling Memverifikasi

Mutual TLS (mTLS) menambahkan verifikasi dua arah: server membuktikan identitas ke client, dan client membuktikan identitas ke server. Ini cara zero trust antar-service (episode 7) bekerja di lapisan jaringan.

100%

Dengan mTLS, Service B menolak koneksi dari siapa pun yang tidak punya sertifikat valid — bahkan dari dalam VPC. Implementasi umum: service mesh (Istio, Linkerd) yang menyuntikkan mTLS antar-pod tanpa mengubah kode aplikasi.

KMS: Mengelola Kunci Enkripsi

Enkripsi at Rest

Data yang disimpan (database, storage, backup) wajib di-encrypt at rest. Provider cloud menyediakan KMS (Key Management Service) — tempat kunci enkripsi dibuat, diputar, dan dikontrol:

ProviderLayanan Kunci
AWSKMS
GCPCloud KMS
AzureAzure Key Vault

Praktik KMS yang Benar

  • Semua storage/DB di-encrypt at rest — aktifkan default, bukan opsional.
  • Separate keys per environment — key produksi tidak dipakai untuk dev.
  • Key rotation terjadwal — kunci enkripsi harus diputar berkala.
  • Envelope encryption — kunci master meng-encrypt kunci data (data key); performa tetap baik.
Contoh: buat key dan aktifkan enkripsi bucket
aws kms create-key --description "prod-data-key"
aws kms enable-key-rotation --key-id <key-id>
aws s3api put-bucket-encryption \
  --bucket my-bucket \
  --server-side-encryption-configuration \
  '{"Rules":[{"ApplyServerSideEncryptionByDefault":{"SSEAlgorithm":"aws:kms","KMSMasterKeyID":"<key-id>"}}]}'

Enkripsi at rest bukan fitur tambahan — ia kontrol wajib untuk compliance (episode 20) dan pertahanan terakhir jika storage bocor.

Secrets Management

Masalah Secret

Password database, API key, dan token tidak boleh ada di kode, environment variable, atau image. Secret yang tersebar adalah bom waktu — episode 18 menegaskan hal yang sama dari sisi identitas.

Arsitektur Secret yang Benar

100%

Pola yang benar: aplikasi meminta secret saat runtime dari secrets manager, bukan membaca dari konfigurasi. Benefit:

  • Satu sumber kebenaran — secret diupdate sekali, semua service dapat.
  • Audit trail — siapa meminta secret apa, kapan.
  • Rotation otomatis — secret diganti terjadwal tanpa downtime.
  • No hardcode — tidak ada secret di kode/repo/image.
Contoh: referensi secret tanpa hardcode
# Referensi secret, bukan nilai secret
database:
  host: db.prod.internal
  username: {secret: prod/db-user}
  password: {secret: prod/db-password, version: "latest"}

Note

Ingat episode 11 dan 18: jika IaC dan pipeline tidak pernah menyimpan secret literal — hanya referensi ke secrets manager — maka repository bisa dibagikan dan di-audit dengan aman. Ini salah satu cara paling efektif mencegah kebocoran kredensial.

Segmentasi Jaringan dan Kontrol Granular

Micro-Segmentation

Di episode 6 kita memisahkan subnet publik/privat. Tingkat berikutnya: micro-segmentation — setiap service di segmen sendiri dengan kontrol akses granular antar-segmen. Ini membatasi blast radius: satu service yang diretas tidak otomatis mengakses yang lain.

Alat Kontrol

LapisanKontrol
NetworkSecurity group/firewall rules (episode 6)
Service meshmTLS + policy antar-service (episode 19)
APIAPI gateway auth, rate limit (episode 21)
DataDatabase-level user + encryption

Arsitektur yang sehat memakai semua lapisan sekaligus — jaringan membatasi secara kasar, service mesh mengontrol secara halus, API gateway mengautentikasi, dan data melindungi dirinya sendiri.

Praktik: Arsitektur Keamanan Data

Kerangka desain keamanan data end-to-end:

  1. Transit: TLS di semua jalur; mTLS antar-service via service mesh.
  2. At rest: enkripsi semua storage/DB via KMS dengan key per environment.
  3. Secrets: semua kredensial di secrets manager, direferensikan bukan disalin.
  4. Segmentasi: micro-segmentation + policy granular di setiap lapisan.
  5. Verifikasi: audit enkripsi & secret di policy-as-code (episode 11) agar tidak bisa menyimpang.
  6. Testing: uji rotasi key dan secret sebelum production (episode 21).

Penutup

Inti yang harus dibawa pulang:

  • TLS di semua komunikasi; mTLS untuk verifikasi dua arah antar-service.
  • Enkripsi at rest via KMS; key rotation terjadwal; envelope encryption.
  • Secret di-request saat runtime dari secrets manager — tidak pernah di-hardcode.
  • Micro-segmentation membatasi blast radius di tiap lapisan.
  • Enforce semuanya lewat policy-as-code, bukan mengandalkan kedisiplinan.

Di episode 20 selanjutnya kita akan membahas compliance & audit architecture — logging/audit, framework regulasi, dan arsitektur untuk sertifikasi. Sampai jumpa di episode 20!

Belajar Cloud Architect - Network Security & Encryption | Belajar Cloud Architect