Ga naar hoofdinhoud

Beveiliging

Principes

  • Least privilege — elke service heeft alleen de rechten die nodig zijn
  • Defense in depth — meerdere lagen (Caddy TLS, Keycloak auth, RBAC, internal secrets)
  • No secrets in code — alle gevoelige waarden via environment variables of GitHub Secrets
  • Audit logging — alle admin-acties worden gelogd

Lagen

Internet → Caddy (TLS termination, rate limiting)
→ Keycloak (authenticatie + autorisatie)
→ applicatie RBAC (rollen per route)
→ internal secret (API-communicatie)
→ database (eigen users per service)

HTTPS

Caddy regelt automatisch Let's Encrypt certificaten voor alle subdomeinen. HTTP wordt redirect naar HTTPS.

Headers

Caddy voegt beveiligingsheaders toe:

  • Strict-Transport-Security
  • X-Content-Type-Options
  • X-Frame-Options
  • Referrer-Policy