☀️Siang
Keamanan

Zero Trust Architecture Implementation

Panduan lengkap implementasi Zero Trust Architecture — prinsip, identity-centric security, microsegmentation, SASE/ZTNA, dan roadmap

Artikel: Zero Trust Implementation Artikel: Zero Trust Implementation

1. Pengenalan Zero Trust Architecture

Zero Trust adalah model keamanan yang menghilangkan konsep trust berdasarkan lokasi jaringan. "Never trust, always verify" — setiap akses harus diverifikasi terlepas dari lokasi.

📋 Apa yang Dipelajari
  • Konsep dan prinsip Zero Trust
  • Identity-centric security model
  • Microsegmentation strategy
  • ZTNA dan SASE
  • Implementation roadmap

Traditional vs Zero Trust

Diagram: Traditional vs Zero Trust
/"Trusted Zone Internal = Trusted (Implicit Access)"/
Server
App
File
Server Verified
DB Verified
App Verified
File Verified
/"Core Principles Verify Identity Least Privilege..."/

2. Prinsip Zero Trust

PrinsipPenjelasanImplementasi
Never Trust, Always VerifyAutentikasi setiap requestMFA, continuous auth
Least Privilege AccessAkses minimumJIT, RBAC/ABAC
Assume BreachAsumsikan attacker di dalamSegmentation, encryption
Verify ExplicitlyVerifikasi semua data pointIdentity, device, behavior
Minimize Blast RadiusBatasi dampak kompromiSegmentation, PAM

3. Identity-Centric Security

Dalam Zero Trust, identity (bukan network) menjadi perimeter baru. Setiap user, device, dan service harus memiliki identity terverifikasi.

Config — Identity Policy
# =============================================
+# Zero Trust Identity Policy
+# =============================================

+# Azure AD Conditional Access (translated)

+# Policy 1: Require MFA
+IF user.role != "service_account"
+AND app.risk != "low"
+THEN require_mfa()
+AND require_compliant_device()

+# Policy 2: Block legacy auth
+IF client_app == "IMAP" OR "POP3" OR "SMTP"
+THEN block()

+# Policy 3: Risk-based access
+IF sign_in_risk == "high" THEN block()
+IF sign_in_risk == "medium" THEN require_mfa()
+AND require_password_change()

+# Policy 4: Session management
+IF app.sensitivity == "high"
+THEN max_session = 1_hour
+AND require_reauthentication()

4. Microsegmentation

Microsegmentation membagi jaringan menjadi granular security zones hingga level workload. Membatasi lateral movement.

YAML — K8s Network Policy
# =============================================
+# Microsegmentation — Kubernetes NetworkPolicy
+# =============================================

+# Default deny all
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+  name: default-deny-all
+  namespace: production
+spec:
+  podSelector: {}
+  policyTypes: [Ingress, Egress]

+# Allow frontend to backend only
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+  name: frontend-to-backend
+  namespace: production
+spec:
+  podSelector:
+    matchLabels:
+      app: backend
+  ingress:
+    - from:
+        - podSelector:
+            matchLabels:
+              app: frontend
+      ports:
+        - port: 8080

+# Allow backend to database only
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+  name: backend-to-db
+spec:
+  podSelector:
+    matchLabels:
+      app: database
+  ingress:
+    - from:
+        - podSelector:
+            matchLabels:
+              app: backend
+      ports:
+        - port: 5432

5. Zero Trust Network Access (ZTNA)

ZTNA menggantikan VPN dengan model yang memverifikasi identity dan device health sebelum memberikan akses ke aplikasi spesifik.

AspekVPNZTNA
AccessFull networkPer-app access
TrustAfter connectContinuous verify
MovementPossibleRestricted
ExperienceSlow, clunkySeamless, fast

6. SASE Architecture

SASE menggabungkan networking (SD-WAN) dan security (ZTNA, SWG, CASB, FWaaS) ke cloud-delivered service.

Diagram: SASE Architecture
User
Device
Service
/"SASE EDGE (Cloud)"/
FWaaS
SaaS
IaaS
Data Center
Network

7. Implementation Roadmap

Roadmap — Zero Trust
# =============================================
+# Zero Trust Implementation Roadmap
+# =============================================

+# PHASE 1: Foundation (Bulan 1-3)
+# ✅ Asset inventory
+# ✅ Data classification
+# ✅ Identity consolidation — SSO + MFA
+# ✅ Device management — MDM
+# ✅ Logging foundation

+# PHASE 2: Identity & Access (Bulan 3-6)
+# ✅ Conditional Access policies
+# ✅ Privileged Access Management
+# ✅ Just-In-Time access
+# ✅ RBAC implementation

+# PHASE 3: Network Segmentation (Bulan 6-12)
+# ✅ Microsegmentation
+# ✅ ZTNA deployment
+# ✅ East-West traffic inspection
+# ✅ DNS filtering

+# PHASE 4: Data Protection (Bulan 12-18)
+# ✅ DLP policies
+# ✅ Encryption at rest & transit
+# ✅ CASB for SaaS apps

+# PHASE 5: Continuous Monitoring (Bulan 18-24)
+# ✅ UEBA
+# ✅ SOAR automated response
+# ✅ Threat hunting program
+# ✅ Maturity assessment

8. Technology & Vendors

CategoryVendorsKey Features
IdentityAzure AD, Okta, PingSSO, MFA, Conditional Access
ZTNAZscaler, Cloudflare, Palo AltoPer-app access, device posture
EndpointCrowdStrike, SentinelOneEDR, device compliance
MicrosegIllumio, GuardicoreWorkload segmentation
SASEZscaler, NetskopeUnified security + networking
PAMCyberArk, BeyondTrustPrivileged access management

Device Trust & Compliance

Dalam Zero Trust, device health adalah faktor kritis dalam keputusan akses. Device yang tidak compliant harus ditolak atau diberikan akses terbatas.

Config — Device Compliance Policy
# =============================================
+# Device Compliance & Trust Policy
+# =============================================

+# Device Trust Requirements:
+# Level 1: Basic (all devices)
+# - OS version >= minimum
+# - Antivirus active & updated
+# - Firewall enabled
+# - Disk encryption enabled
+
+# Level 2: Enhanced (corporate devices)
+# - All Level 1 requirements
+# - MDM enrolled
+# - Company certificate installed
+# - Approved OS build
+# - No jailbreak/root
+
+# Level 3: High Security (privileged access)
+# - All Level 2 requirements
+# - Hardware TPM/FIDO2 key
+# - Specific network location
+# - Recent security scan passed
+# - No USB peripherals (optional)

+# Azure AD Conditional Access — Device filter
+# IF device.trustType == "ServerAD"
+# OR device.isCompliant == true
+# THEN allow_access()
+# ELSE redirect_to_portal("Register your device")

+# Intune Compliance Policy
+# Minimum OS: Windows 10 22H2
+# BitLocker: Required
+# Defender: Real-time protection ON
+# Password: Min 12 chars, complexity
+# Jailbreak: Block compromised devices

Zero Trust Network Architecture

Diagram: Zero Trust Network Design
Remote
Office
Mobile
IoT
/"IDENTITY PROVIDER (IdP) MFA Verification Device..."/
/"POLICY DECISION POINT (PDP) Evaluate Policies C..."/
/"POLICY ENFORCEMENT POINT (PEP)"/
Apps
Web
SaaS
Data

Automated Access Reviews

Zero Trust memerlukan review akses berkala untuk memastikan tidak ada privilege creep. Automasi membantu skala proses ini.

Python — Access Review Automation
# =============================================
+# Automated Access Review Script
+# =============================================

+import datetime
+from dataclasses import dataclass
+
+@dataclass
+class AccessReview:
+    user: str
+    role: str
+    last_activity: datetime.datetime
+    granted_date: datetime.datetime
+    approver: str
+    risk_level: str
+
+def review_access(access_records):
+    # Flag access that needs review.
+    now = datetime.datetime.now()
+    alerts = []
+
+    for record in access_records:
+        # Rule 1: Inactive access (> 90 days no activity)
+        days_inactive = (now - record.last_activity).days
+        if days_inactive > 90:
+            alerts.append({
+                "user": record.user,
+                "issue": f"Inactive for {days_inactive} days",
+                "action": "REVOKE"
+            })
+
+        # Rule 2: Stale access grants (> 365 days)
+        days_granted = (now - record.granted_date).days
+        if days_granted > 365:
+            alerts.append({
+                "user": record.user,
+                "issue": f"Access granted {days_granted} days ago",
+                "action": "RE-APPROVE"
+            })
+
+        # Rule 3: High-risk access without recent review
+        if record.risk_level == "high":
+            alerts.append({
+                "user": record.user,
+                "issue": "High-risk access needs quarterly review",
+                "action": "MANAGER_REVIEW"
+            })
+
+    return alerts
+
+# Generate report
+# alerts = review_access(all_access_records)
+# for alert in alerts:
+#     send_notification(alert["user"], alert["issue"])
+
+

Zero Trust Assessment Checklist

+ + + + + + + + +
DomainAssessment CriteriaScore
IdentityMFA enabled for all users? SSO implemented?0-5
DevicesMDM enrolled? Compliance policies enforced?0-5
NetworkMicrosegmentation? Encrypted traffic?0-5
ApplicationsZTNA deployed? API security?0-5
DataClassification done? DLP active?0-5
MonitoringUEBA? SOAR? Continuous verification?0-5
GovernanceAccess reviews? Policy enforcement?0-5
+

Target score: 28/35 (80%) untuk mature Zero Trust implementation.

+ +

Zero Trust for Remote Work

+

Remote work mempercepat adopsi Zero Trust karena traditional perimeter (kantor) sudah tidak relevan. Setiap koneksi harus diverifikasi terlepas dari lokasi.

+
Config — Remote Work Zero Trust
+
# =============================================
+# Zero Trust Remote Work Policy
+# =============================================

+# Network Access Policy:
+# 1. Remote workers connect via ZTNA (bukan VPN)
+# 2. Device compliance checked before access
+# 3. Per-app access (bukan full network)
+# 4. Session recording untuk sensitive apps

+# ZTNA Connection Flow:
+# 1. User opens browser/app
+# 2. ZTNA agent checks:
+#    - Device identity (certificate)
+#    - Device compliance (OS, AV, encryption)
+#    - User identity (MFA)
+#    - Location risk score
+# 3. Policy engine evaluates:
+#    - Is user allowed to access this app?
+#    - Is device compliant enough?
+#    - Is current risk acceptable?
+# 4. If approved: encrypted tunnel to app only
+# 5. If denied: clear error message + remediation steps

+# Home Network Security Recommendations:
+# - Separate VLAN for work devices
+# - Updated router firmware
+# - Strong WiFi password (WPA3)
+# - Disable WPS
+# - Enable router firewall
+# - Use DNS filtering (1.1.1.3 / 9.9.9.9)
+
+

Zero Trust Maturity Assessment

+
Checklist — ZT Maturity Assessment
+
# =============================================
+# Zero Trust Maturity Assessment
+# =============================================

+# IDENTITY (Score: 0-5)
+# □ All users have unique identity
+# □ MFA enabled for all users (not just admin)
+# □ MFA is phishing-resistant (FIDO2)
+# □ SSO across all applications
+# □ Just-in-time privileged access
+# □ Regular access reviews (quarterly)
+# □ Service account inventory & rotation
+# □ No shared accounts
+
+# DEVICES (Score: 0-5)
+# □ All devices inventoried
+# □ MDM enrolled (corporate devices)
+# □ Device compliance policies enforced
+# □ Endpoint detection & response deployed
+# □ Automated patching
+# □ Disk encryption mandatory
+# □ BYOD policy with container isolation
+# □ No unmanaged devices access sensitive data
+
+# NETWORK (Score: 0-5)
+# □ Microsegmentation implemented
+# □ All traffic encrypted (TLS 1.3)
+# □ DNS filtering active
+# □ East-west traffic inspection
+# □ No implicit trust for internal traffic
+# □ ZTNA replacing VPN
+# □ DDoS protection
+# □ Network anomaly detection
+
+# APPLICATIONS (Score: 0-5)
+# □ Secure SDLC implemented
+# □ API security controls
+# □ WAF deployed
+# □ SaaS access through CASB
+# □ Application-level access control
+# □ Secrets management (no hardcoded)
+# □ Regular security testing
+# □ Dependency vulnerability scanning
+
+# DATA (Score: 0-5)
+# □ Data classification complete
+# □ Encryption at rest & in transit
+# □ DLP controls active
+# □ Data access logging
+# □ Retention policies enforced
+# □ Backup & recovery tested
+# □ Data sovereignty compliance
+# □ No sensitive data in unprotected locations
+
+# SCORING:
+# 0 = Not started
+# 1 = Initial (ad-hoc)
+# 2 = Developing (some implementation)
+# 3 = Defined (consistent implementation)
+# 4 = Managed (measured & controlled)
+# 5 = Optimized (automated & continuous improvement)
+#
+# Total Score: ___/40
+# Maturity Level: Traditional (0-10) | Advanced (11-25) | Optimal (26-40)
+

9. Quiz Pemahaman

1. Prinsip utama Zero Trust?

2. Apa 'perimeter' baru dalam Zero Trust?

3. Fungsi microsegmentation?

4. Keunggulan ZTNA vs VPN?

5. SASE menggabungkan?

Rangkuman

📝 Poin Penting
  • Never Trust — Setiap akses diverifikasi terlepas lokasi
  • Identity — Identity menjadi perimeter baru, bukan network
  • Microsegmentation — Granular zones membatasi lateral movement
  • ZTNA — Per-app access menggantikan VPN full-network
  • Roadmap — Implementasi bertahap 24 bulan: Foundation → Identity → Segmentation → Data → Monitoring
🔍 Zoom
100%
🎨 Tema