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
2025-02-16 20:32:34 +02:00
2025-02-16 14:10:19 +02:00
2025-06-12 16:26:10 +02:00
2025-02-16 14:10:19 +02:00
2025-02-16 14:10:19 +02:00
2025-06-03 22:04:22 +03:00
2025-06-12 21:54:47 +02:00
2025-02-16 14:10:19 +02:00
2025-02-16 14:10:19 +02:00

Client Portal

Commands

  • npm run dev to start development

Tech Stack

  • Node.js
  • Nuxt
  • Directus
  • Vuetify
Description
No description provided
Readme 2.3 MiB
Languages
TypeScript 51.5%
Vue 48.5%