Delete identity headers at the edge before header-trusting backends

FixKlusterServices
Shipped
September 10, 2026 at 8:19 PM UTC
Author
Kamo
Commit
cd360dd

Add a strip-identity-headers Middleware. A customRequestHeaders value of "" deletes the header, so X-Org-Id, X-Member-Id, X-User-Id, X-God-Mode-Active, X-Member-Type, X-Public-Chat-Org-Id and X-Public-Chat-Key-Hash never reach a backend from a client. Attach it to the two carve-out routes that reach a backend without passing through APIService: - **************** strips /desktop-ws, so it reaches every SecurityService path from internal.*. /api/security/entitlements/me there took its caller from a client-sent X-Member-Id. - ai-chat-ws-route is a carve-out of api.*, so every router on that host now applies the same rule. api-route (APIService repo, k8s/ingressroute.yaml) references the same Middleware. This commit must be applied before that one: Traefik rejects a route naming a missing middleware, and every api.* host would 404. Not added to kamo-middlewares: that chain fronts the Next.js apps, and kamo-internal's billing and LOS proxies relay X-God-Mode-Active from the browser to services that re-check it against User.isGod. kubectl diff over every traefik/ apply target shows only these objects plus the existing meet-route label drift (app: kamomeet live, kamo-meet here). deployment.yaml and crds/ are unchanged, so the apply does not restart Traefik.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing