Go to file
Matt 9ced2518ed FINAL FIX: Configure persistent storage for OIDC sessions
##  **Critical Session Storage Configuration:**

### **Nitro Storage Setup:**
-  Added file-based storage for OIDC sessions: ./data/oidc-sessions
-  Configured general session storage: ./data/sessions
-  Uses filesystem driver for container persistence

### **OIDC Session Management:**
-  Enhanced session configuration with proper expiration handling
-  Cookie settings optimized for HTTPS cross-domain authentication
-  Automatic refresh with 60-second threshold before expiry
-  Secure cookie flags for production environment

### **Debug Tools Added:**
-  /api/debug/oidc-session endpoint for monitoring session state
- Safe debugging without exposing sensitive authentication tokens

##  **Problem Solved:**
The core issue was that nuxt-oidc-auth had no persistent storage backend
configured, causing sessions to be lost immediately after OAuth callback.

##  **Root Cause:**
- OIDC sessions were using in-memory storage (default)
- Sessions expired immediately in containerized environment
- No refresh token persistence across requests
- User redirected back to login despite successful Keycloak auth

##  **Expected Results:**
 Keycloak authentication should now persist properly
 Sessions saved to filesystem and survive container restarts
 Users stay logged in after successful SSO authentication
 Automatic token refresh prevents session timeouts
 Dashboard access maintained after OAuth callback

##  **Container Setup:**
The ./data/ directory will be created automatically in the container
and sessions will persist as long as container storage is maintained.

This completes the Keycloak SSO integration!
2025-06-14 16:22:34 +02:00
.gitea/workflows build: add workflow 2025-02-16 20:32:34 +02:00
components Update logo references and email logo URL in configuration 2025-06-13 13:36:14 +02:00
composables MAJOR: Replace keycloak-js with nuxt-oidc-auth for seamless SSO integration 2025-06-14 15:58:03 +02:00
docs Implement Keycloak authentication integration and unify user management 2025-06-14 14:09:56 +02:00
middleware MAJOR: Replace keycloak-js with nuxt-oidc-auth for seamless SSO integration 2025-06-14 15:58:03 +02:00
pages 🔧 FIX: Disable OIDC global middleware to prevent redirect loops 2025-06-14 16:07:01 +02:00
plugins feat: Implement comprehensive PWA functionality 2025-06-12 16:36:32 +02:00
public Feat: Complete EOI improvements and PWA implementation 2025-06-12 16:16:30 +02:00
server CRITICAL FIX: Enhanced OIDC session configuration for Keycloak authentication 2025-06-14 16:17:58 +02:00
static feat: add files 2025-02-16 14:10:19 +02:00
utils fixes 2025-06-12 16:26:10 +02:00
.dockerignore feat: add files 2025-02-16 14:10:19 +02:00
.env.example MAJOR: Replace keycloak-js with nuxt-oidc-auth for seamless SSO integration 2025-06-14 15:58:03 +02:00
.gitignore feat: add files 2025-02-16 14:10:19 +02:00
Dockerfile REVERT Network Updates 2025-06-12 21:54:47 +02:00
README.md feat: add files 2025-02-16 14:10:19 +02:00
app.vue feat: add interest button 2025-06-03 22:04:22 +03:00
nuxt.config.ts FINAL FIX: Configure persistent storage for OIDC sessions 2025-06-14 16:22:34 +02:00
package-lock.json MAJOR: Replace keycloak-js with nuxt-oidc-auth for seamless SSO integration 2025-06-14 15:58:03 +02:00
package.json MAJOR: Replace keycloak-js with nuxt-oidc-auth for seamless SSO integration 2025-06-14 15:58:03 +02:00
tsconfig.json feat: add files 2025-02-16 14:10:19 +02:00

README.md

Client Portal

Commands

  • npm run dev to start development

Tech Stack

  • Node.js
  • Nuxt
  • Directus
  • Vuetify