What it is
The login gateway is a glue module: it runs no container of its own. It declares thelogin-gateway forward-auth middleware on Traefik and ties TinyAuth (the forward-auth entrypoint) to PocketID (the local OIDC identity provider). The module requires Traefik 3.0 or later and TinyAuth 4.0 or later.
When you open a protected service, Traefik asks TinyAuth whether you have a valid session. Without one, you are sent to the auth.<domain> login, PocketID authenticates you, and you return to the service with a session.
Ownership
You own and operate the deployment, the local owner account and its recovery material. The account that protects your services lives in your own PocketID. It is not a kombify account, and kombify does not reset it for you.Which kits include it
The Basement Kit and Cloud Kit definitions both list the login gateway as a default platform service next to Traefik, TinyAuth and PocketID, with no alternatives. See Basement Kit and Cloud Kit.Deployment mode and prerequisites
- It protects services deployed by a StackKit that are added with the login gateway option.
- It needs the shared Docker network that the platform services use.
- Its defaults are a 24-hour session (
sessionExpiry, 86400 seconds, at least 300) and a required second factor for admin users (requireMfaForAdmins).
Protecting your own applications
When you add an application with the CLI,stackkit app add --auth accepts login-gateway (the default) or public. Choose public only for a service that does its own authentication, such as a public landing page or a webhook receiver. The module definition also expects a service that skips the gateway to be explicitly listed as an allowed public bypass; otherwise validation fails. See application commands.
Status
The module is marked as a draft in the StackKits source (maturitydraft, version 0.1.0). Its definition is scaffolded and enforcement across every service depends on the composition engine. Treat the behavior above as the intended contract and confirm it on your own rollout with stackkit verify --json rather than assuming that every route is protected.
Authelia and other alternatives
The released catalog offers PocketID with TinyAuth. Authelia is not a selectable catalog service: it appears only as a configuration type in the StackKits foundation schema, and its earlier add-on definition was removed. Do not plan a deployment around Authelia, and do not expect an alternative to the login gateway in the kit definitions. If this changes, it will appear in the platform services list of a released version first.If something goes wrong
- A route is not asking for a sign-in: compare the hostname with the generated route and run
stackkit verify --jsonfrom the workspace folder. - You cannot sign in: use the owner account created in PocketID, not a kombify Cloud account.
- More checks: Troubleshooting.
