Ziel: Kunden loggen sich via Authentik ein und sehen danach nur ihren Mandanten. Mandanten laufen über IDs (z.B. tenant-123).
Damit /portal/ wirklich geschützt ist, braucht Caddy einen Authentik Outpost (Proxy Provider). Danach kann Caddy Requests zu Authentik schicken.
Caddy-Skizze (muss an eure Outpost-URL angepasst werden):
# Beispiel: /portal/ absichern
handle_path /portal/* {
forward_auth https://sso.sasas.cloud {
uri /outpost.goauthentik.io/auth/caddy
copy_headers X-Authentik-Username X-Authentik-Groups X-Authentik-Email X-Authentik-Name
}
root * /var/www/sasas.cloud
file_server
}
Wichtig: Das ist der Rahmen. Wir müssen die echte Outpost-Route/Provider in Authentik sauber anlegen (sonst blockt’s alles oder lässt alles durch).
Wir bauen einen kleinen Portal-Backend-Service (Node) mit: