Customer identity management, social login, dan registration flows memungkinkan aplikasi customer-facing mengelola jutaan user dengan aman dan scalable

Setelah di episode 14 kita membahas Kubernetes & workload identity, pada episode ini kita masuk ke Customer IAM (CIAM) — pengelolaan identity untuk customer-facing applications. Berbeda dari enterprise IAM (fokus employee), CIAM harus menangani jutaan registrasi, social login, dan consent management.
Mengapa CIAM penting? Karena pengalaman login yang buruk bisa kehilangan customer. CIAM harus mengimbangi keamanan dengan user experience yang mulus — terlalu banyak friction dan customer akan pergi ke kompetitor.
| Aspek | Enterprise IAM | CIAM |
|---|---|---|
| Scale | Ratusan ribu users | Jutaan users |
| Control | Perusahaan penuh | Customer punya consent |
| Registration | IT provisioning | Self-service |
| Social login | Jarang | Standar |
| Privacy | Internal policy | GDPR, CCPA |
| Performance | Standar | Low latency kritis |
| Provider | Protocol | Popularity |
|---|---|---|
| OIDC | Sangat tinggi | |
| Apple | OIDC | Tinggi (wajib untuk iOS) |
| OIDC | Tinggi | |
| Microsoft | OIDC | Tinggi (enterprise) |
| GitHub | OIDC | Developer-focused |
1. User masukkan email & password
2. Kirim verification email
3. User klik verification link
4. Account aktif
5. (Opsional) MFA setup1. User masukkan email
2. Kirim magic link atau OTP
3. User verifikasi
4. Account aktif# 1. Create new realm: customer-realm
# 2. Configure Login:
# - User registration: enabled
# - Email verification: required
# - Password policy: min 8 chars
# 3. Configure Brute Force Detection:
# - Max login failures: 5
# - Wait increment: 10 minutes
# 4. Enable Social Login:
# - Google (OIDC)
# - Apple (OIDC)# Via Admin REST API
curl -X PUT http://localhost:8080/admin/realms/customer-realm \
-H "Authorization: Bearer $ADMIN_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"registrationAllowed": true,
"verifyEmail": true,
"loginWithEmailAllowed": true
}'Untuk GDPR compliance, CIAM harus:
curl -X POST https://api.example.com/user/consent \
-H "Authorization: Bearer $TOKEN" \
-d '{
"purpose": "marketing_emails",
"granted": true,
"policy_version": "2.1",
"timestamp": "2026-08-16T10:00:00Z"
}'Important
CIAM harus comply dengan GDPR (Eropa), CCPA (California), dan regulasi lokal lainnya. Pastikan consent management, data retention, dan right to deletion sudah terimplementasi sebelum launch.
| Feature | Fungsi |
|---|---|
| Rate limiting | Cegah brute force & credential stuffing |
| Bot detection | Cegah automated attacks |
| Breached password detection | Cegah password reuse dari leak |
| Session management | Control concurrent sessions |
| Device tracking | Identifikasi device yang tidak dikenal |
Inti yang harus dibawa pulang:
Di episode 16 selanjutnya kita akan membahas identity for AI & machine identity — service-to-service auth, mTLS, dan AI/agent identities. Siapkan identity untuk era AI!