Identity en netwerkgrenzen
Afstemming met het platformplan: self-hosted stack, geen public-cloud edge/CDN/WAF als verplichte runtime; Keycloak als doel-IdP; strikte scheiding telematics vs user platform.
Identity (IdP)
| Beslissing | Richting |
|---|---|
| Productie-IdP | Keycloak self-hosted (HA in scale-fase), PostgreSQL voor realm-data |
| Managed OIDC (Auth0, Azure B2C, …) | Niet verplicht; alleen als bewuste business-keuze |
| MVP huidige repo | Sessie-auth in Express kan blijven tot v1; migratie naar OIDC gepland — zie phase-1-mvp.md |
| Federatie naar klant-IdP | Alleen bewust ingeschakeld (LDAP/AD/SAML/OIDC per enterprise-tenant) |
Netwerksegmentatie (doel)
Scheid minimaal deze trust zones (Kubernetes namespaces of gelijkwaardige VLAN/VPC-segmenten):
| Zone | Workloads | Inbound |
|---|---|---|
| edge | L4/L7 LB, WAF (self-hosted), statische cache | Internet / field networks |
| telematics-ingest | TCP/UDP gateway, parsers | Alleen LB ingest-poorten + beheer |
| user-platform | HTTP API, BFF, web static | Alleen via L7 gateway |
| data | PostgreSQL, Redis, ClickHouse, Kafka, OpenSearch | Alleen applicatie-subnetten |
| batch / workers | Report jobs, notification senders | Geen direct internet; queues only |
| observability | Prometheus, Grafana, log store | Beperkt tot ops-netwerk |
Regel: web- en mobile-clients praten niet rechtstreeks met ingest-hosts; live data via API/read models.
Geen public-cloud edge
- Geen verplichte Cloudflare / AWS CloudFront+WAF / Azure Front Door als architectuurvereiste.
- Edge = eigen HAProxy/NGINX + ModSecurity + eigen cache (NGINX/Varnish).
Referenties
- ADR:
adr/0002-network-and-identity-boundaries.md - Voorbeeld NGINX:
examples/nginx-lb-example.conf