Refactoring - Version OK
This commit is contained in:
@@ -3,7 +3,7 @@ quarkus.application.name=unionflow-client
|
||||
quarkus.application.version=1.0.0
|
||||
|
||||
# Configuration HTTP
|
||||
quarkus.http.port=8082
|
||||
quarkus.http.port=8086
|
||||
quarkus.http.host=0.0.0.0
|
||||
quarkus.http.root-path=/
|
||||
quarkus.http.so-reuse-port=true
|
||||
@@ -28,7 +28,7 @@ quarkus.myfaces.number-of-views-in-session=50
|
||||
quarkus.myfaces.number-of-sequential-views-in-session=10
|
||||
quarkus.myfaces.serialize-state-in-session=false
|
||||
quarkus.myfaces.client-view-state-timeout=3600000
|
||||
quarkus.myfaces.view-expired-exception-handler-redirect-page=/pages/public/login.xhtml
|
||||
quarkus.myfaces.view-expired-exception-handler-redirect-page=/
|
||||
quarkus.myfaces.check-id-production-mode=false
|
||||
quarkus.myfaces.strict-xhtml-links=false
|
||||
quarkus.myfaces.refresh-transient-build-on-pss=true
|
||||
@@ -36,7 +36,9 @@ quarkus.myfaces.resource-max-time-expires=604800000
|
||||
quarkus.myfaces.resource-buffer-size=2048
|
||||
|
||||
# PrimeFaces Configuration
|
||||
primefaces.THEME=freya-blue-light
|
||||
# IMPORTANT: Nous laissons PrimeFaces sans th<74>me par d<>faut et chargeons le th<74>me Freya via index.xhtml/main-template.xhtml
|
||||
# pour <20>viter tout double-chargement (ex: Saga + Freya).
|
||||
primefaces.THEME=none
|
||||
primefaces.FONT_AWESOME=true
|
||||
primefaces.CLIENT_SIDE_VALIDATION=true
|
||||
primefaces.MOVE_SCRIPTS_TO_BOTTOM=true
|
||||
@@ -51,7 +53,7 @@ omnifaces.CDN_RESOURCE_HANDLER_DISABLED=true
|
||||
omnifaces.COMBINED_RESOURCE_HANDLER_DISABLED=false
|
||||
|
||||
# Configuration Backend UnionFlow
|
||||
unionflow.backend.url=${UNIONFLOW_BACKEND_URL:http://localhost:8080}
|
||||
unionflow.backend.url=${UNIONFLOW_BACKEND_URL:http://localhost:8085}
|
||||
|
||||
# Configuration REST Client
|
||||
quarkus.rest-client."unionflow-api".url=${unionflow.backend.url}
|
||||
@@ -62,11 +64,46 @@ quarkus.rest-client."unionflow-api".read-timeout=30000
|
||||
# Gestion des erreurs REST
|
||||
quarkus.rest-client."unionflow-api".providers=dev.lions.unionflow.client.service.RestClientExceptionMapper
|
||||
|
||||
# Configuration JWT et Sécurité
|
||||
unionflow.jwt.secret=${JWT_SECRET:union-flow-secret-key-very-long-and-secure-2024}
|
||||
unionflow.jwt.issuer=${JWT_ISSUER:unionflow-platform}
|
||||
unionflow.jwt.expiration-time=${JWT_EXPIRATION:3600}
|
||||
unionflow.jwt.refresh-expiration-time=${JWT_REFRESH_EXPIRATION:86400}
|
||||
# Configuration Keycloak OIDC
|
||||
quarkus.oidc.enabled=true
|
||||
quarkus.oidc.auth-server-url=https://security.lions.dev/realms/unionflow
|
||||
quarkus.oidc.client-id=unionflow-client
|
||||
quarkus.oidc.credentials.secret=${KEYCLOAK_CLIENT_SECRET}
|
||||
quarkus.oidc.application-type=web-app
|
||||
quarkus.oidc.authentication.redirect-path=/auth/callback
|
||||
quarkus.oidc.authentication.restore-path-after-redirect=true
|
||||
quarkus.oidc.authentication.scopes=openid,profile,email,roles
|
||||
quarkus.oidc.token.issuer=https://security.lions.dev/realms/unionflow
|
||||
quarkus.oidc.tls.verification=none
|
||||
# quarkus.oidc.authentication.force-redirect-https=false # Not supported in this Quarkus version
|
||||
quarkus.oidc.authentication.cookie-same-site=lax
|
||||
quarkus.oidc.authentication.java-script-auto-redirect=false
|
||||
quarkus.oidc.discovery-enabled=true
|
||||
|
||||
# TEMPORAIRE: contourner un access token invalide (claim realm_access dupliqu<71>e c<>t<EFBFBD> KC)
|
||||
# Pour un flux web-app, on peut s'appuyer sur l'ID Token et d<>sactiver la v<>rification de l'Access Token
|
||||
# Les deux cl<63>s ci?dessous couvrent les variantes selon version de Quarkus; l'une sera ignor<6F>e si non support<72>e.
|
||||
# Vérification du token activée
|
||||
# ✅ CORRIGÉ: Le mapper Keycloak problématique a été supprimé (17/11/2025)
|
||||
# Le scope "roles" gère maintenant correctement realm_access.roles (objet unique)
|
||||
quarkus.oidc.verify-access-token=true
|
||||
|
||||
# Activation de la sécurité
|
||||
quarkus.security.auth.enabled=true
|
||||
|
||||
# Chemins publics (non prot<6F>g<EFBFBD>s par OIDC) - Doit <20>tre d<>fini en premier
|
||||
# La page d'accueil (/) et index.xhtml sont publics pour permettre l'affichage initial
|
||||
# IMPORTANT: Les ressources JSF/PrimeFaces sont servies via /jakarta.faces.resource/* (ou /javax.faces.resource/* selon la stack)
|
||||
# Elles doivent <20>tre publiques pour permettre le chargement des CSS/JS (th<74>me Freya, primeicons, primeflex, etc.)
|
||||
# On inclut <20>galement /q/oidc/* pour laisser Quarkus OIDC exposer ses endpoints internes si n<>cessaire.
|
||||
quarkus.http.auth.permission.public.paths=/,/index.xhtml,/pages/public/*,/auth/*,/q/*,/q/oidc/*,/favicon.ico,/resources/*,/META-INF/resources/*,/images/*,/jakarta.faces.resource/*,/javax.faces.resource/*
|
||||
quarkus.http.auth.permission.public.policy=permit
|
||||
|
||||
# Tous les autres chemins nécessitent une authentification
|
||||
# IMPORTANT: L'ordre est crucial - les permissions publiques doivent être définies AVANT les permissions authentifiées
|
||||
# Quarkus OIDC redirigera automatiquement vers Keycloak pour les chemins non publics
|
||||
quarkus.http.auth.permission.authenticated.paths=/*
|
||||
quarkus.http.auth.permission.authenticated.policy=authenticated
|
||||
|
||||
# Configuration Session
|
||||
unionflow.session.timeout=${SESSION_TIMEOUT:1800}
|
||||
@@ -78,16 +115,3 @@ unionflow.security.password.min-length=${PASSWORD_MIN_LENGTH:8}
|
||||
unionflow.security.password.require-special-chars=${PASSWORD_REQUIRE_SPECIAL:true}
|
||||
unionflow.security.max-login-attempts=${MAX_LOGIN_ATTEMPTS:5}
|
||||
unionflow.security.lockout-duration=${LOCKOUT_DURATION:300}
|
||||
|
||||
# Dev mode configuration
|
||||
%dev.quarkus.log.category."dev.lions.unionflow".level=DEBUG
|
||||
%dev.quarkus.log.category."jakarta.faces".level=INFO
|
||||
%dev.quarkus.log.category."org.apache.myfaces".level=INFO
|
||||
%dev.quarkus.log.category."org.primefaces".level=INFO
|
||||
%dev.quarkus.myfaces.project-stage=Development
|
||||
%dev.quarkus.live-reload.instrumentation=true
|
||||
|
||||
# Prod mode configuration
|
||||
%prod.quarkus.log.console.level=WARN
|
||||
%prod.quarkus.myfaces.project-stage=Production
|
||||
%prod.quarkus.myfaces.serialize-state-in-session=true
|
||||
Reference in New Issue
Block a user