audiobookshelf/server
Denis Arnst 073eff74ef
Add OIDC Back-Channel Logout support
Implement OIDC Back-Channel Logout 1.0 (RFC). When enabled, the IdP can
POST a signed logout_token JWT to invalidate user sessions server-side.

- Add BackchannelLogoutHandler: JWT verification via jose, jti replay
  protection with bounded cache, session destruction by sub or sid
- Add oidcSessionId column to sessions table with index for fast lookups
- Add backchannel logout route (POST /auth/openid/backchannel-logout)
- Notify connected clients via socket to redirect to login page
- Add authOpenIDBackchannelLogoutEnabled toggle in schema-driven settings UI
- Migration v2.34.0 adds oidcSessionId column and index
- Polish settings UI: auto-populate loading state, subfolder dropdown
  options, KeyValueEditor fixes, localized descriptions via descriptionKey,
  duplicate key detection, success/error toasts
- Localize backchannel logout toast (ToastSessionEndedByProvider)
- OidcAuthStrategy tests now use real class via require-cache stubbing
2026-02-05 17:55:10 +01:00
..
auth Add OIDC Back-Channel Logout support 2026-02-05 17:55:10 +01:00
controllers Revamp OIDC auth: remove Passport wrapper, add schema-driven settings UI 2026-02-05 17:54:59 +01:00
finders Fix Upload Lookup 2025-11-29 11:02:42 +01:00
libs Add fuse.basic.min.js in libs instead of full npm package, use lower threshold for quick matching 2025-06-13 17:23:24 -05:00
managers BackupManager: Remove backup fallback logic 2025-12-01 18:54:43 +02:00
migrations Add OIDC Back-Channel Logout support 2026-02-05 17:55:10 +01:00
models Add OIDC Back-Channel Logout support 2026-02-05 17:55:10 +01:00
objects Add OIDC Back-Channel Logout support 2026-02-05 17:55:10 +01:00
providers Fix server crash on audible match #4931 2025-12-23 16:44:29 -06:00
routers Revamp OIDC auth: remove Passport wrapper, add schema-driven settings UI 2026-02-05 17:54:59 +01:00
scanner Auto-formatting 2025-12-21 14:45:04 -06:00
utils Fix server crash filtering by decade with collapsed series 2025-12-24 17:07:05 -06:00
Auth.js Add OIDC Back-Channel Logout support 2026-02-05 17:55:10 +01:00
Database.js Update API Keys to be tied to a user, add apikey lru-cache, handle deactivating expired keys 2025-06-30 14:53:11 -05:00
Logger.js Simplify log level determination 2025-03-08 12:46:36 -07:00
Server.js Update for nextjs client, pass all remaining requests through to nextjs 2025-09-28 09:41:15 -05:00
SocketAuthority.js Replace cover search with streaming version 2025-10-02 13:30:03 +03:00
Watcher.js Add: generic function to ignor files 2025-02-22 12:28:51 -07:00