Repository navigation
v1.2.0
What's new
PostgreSQL-backed session store
Sessions are now persisted in PostgreSQL using connect-pg-simple. A background job automatically purges stale sessions, preventing unbounded table growth over time.
Breaking change:
SESSION_SECRETis now a required environment variable. The service will refuse to start without it. Generate a value withopenssl rand -base64 48and add it to your deployment before upgrading.
OpenID Connect (OIDC) SSO
Single sign-on via OpenID Connect is now fully supported. Once configured, a provider sign-in button appears on the login screen alongside the existing email/password form. OIDC configuration is managed through the admin config API — no service restart is required after changing settings.
New endpoints:
| Method | Path | Auth | Description |
|---|---|---|---|
GET |
/oidc/enabled |
Public | Returns whether OIDC is configured |
GET |
/login/oidc |
Public | Initiates the OIDC authorization flow (redirects to provider) |
GET |
/login/oidc/callback |
Public | Handles the provider redirect callback and issues tokens |
GET |
/config |
Admin | Retrieve the full authentication configuration including OIDC settings |
GET |
/config/public |
Public | Retrieve sanitized config (oidcEnabled, oidcProviderName, signupEnabled) |
PATCH |
/config |
Admin | Update authentication configuration including OIDC credentials |
Improvements
- Refactored authentication strategies to use the Passport strategy pattern, making it straightforward to add additional providers in future releases
- Improved error logging for OIDC authentication exceptions to aid debugging of provider misconfiguration
Breaking changes
SESSION_SECRET is now required. The service will not start without it.
Upgrade notes
- Generate a session secret:
openssl rand -base64 48 - Add
SESSION_SECRETto your environment (addAPP_URLfor OIDC redirect URL generation) - The
sessiontable is created automatically on first startup - See the updated Getting Started guide for a revised
docker-compose.yml
Full Changelog: v1.1.1...v1.2.0