[AUTHENTIFICATION] L'inactivité au bout d'1h30 doit déconnecter
Created by: Donovan Bourlard
- Supprimer le
security.gc_lifetime - Créer un Subscriber au Kernel::requestEvent qui va check la session du user connecté et voir la dernière utilisation de la session --> Si + de 1h30 alors on supprime le cookie (subcriber à placer avant le Authentication Checker)
Imported comments:
By Michael Edlich on 2019-07-16T12:10:10.497Z
closed
By Michael Edlich on 2019-07-16T12:10:10.056Z
OK !!!
By Donovan Bourlard on 2019-07-15T19:28:06.433Z
mentioned in commit 7aa175ad
By Donovan Bourlard on 2019-07-15T19:23:51.579Z
assigned to @awkan
By Donovan Bourlard on 2019-07-08T12:16:13.684Z
@m.edlich L'erreur semble trouvée : le paramètre session.gc_maxlifetime de Symfony ne vient pas "surcharger" celui du client PHP. De ce fait les sessions sont supprimées de manière aléatoire au bout de 24 minutes (temps par défaut du gc).
Je viens de passer le session.gc_maxlifetime à la même durée que le temps d'inactivité souhaitée (soit 1h30) et le bug semble avoir disparu. Je continue la vérification mais c'est modifié en PREPROD.
S'il s'agit vraiment de ce souci, je rajouterai une note dans le fichier UPGRADE.md avec la prochaine version.
By Donovan Bourlard on 2019-06-28T20:22:06.354Z
Impossible d'en déterminer la cause (peut-être une configuration serveur ??).
La fonctionnalité fonctionne très bien avec des petits délai d'inactivité.
- Je cherche à déterminer le délai auquel ça commence à dysfonctionner (mais attendre 30 min / 1h par test c'est long)
- Une fois que j'ai le délai, j'identifie ce qui met ce timeout (le
garbage_collectionde PHP qui prend le dessus sur celui de Symfony ?) et je le fix
By Donovan Bourlard on 2019-06-26T18:19:05.285Z
Selon la page de documentation PHP, il y a une valeur gc_maxlifetime par défaut à 1440 (24 minutes). C'est elle qui peut potentiellement nous déconnecter entre les 24 et 1h30.
https://www.php.net/manual/en/session.configuration.php#ini.session.gc-maxlifetime
Je viens donc de le mettre à la même durée que le cookie pour qu'il ne nous dérange pas durant le temps de connexion.
Je test sur les 1h30 demain.
By Michael Edlich on 2019-06-26T15:02:26.728Z
Possible, j'ai utilisé un navigateur (chrome) en mode "navigation privée" ; je l'ai connecté, continué la navigation avec un autre navigateur et suis revenu sur la page 3/4 d'heure plus tard et pouf déco.
Signature mail
By Donovan Bourlard on 2019-06-26T14:44:48.226Z
Je vais re-tester ce soir, ça me parait bizarre pour le coup. Il n'y a plus de garbage_collector
Je descendrai le temps d'inactivité à 1 minutes et je verrai les comportements. Je te tiens au courant.
Il y a pu avoir des effets de bords durant ton test
By Michael Edlich on 2019-06-26T14:13:14.999Z
KO, connexion à 15h12 puis je change de page à 16h09 => déconnexion
By Donovan Bourlard on 2019-06-20T17:38:32.832Z
mentioned in commit af7bdd4e
By Donovan Bourlard on 2019-06-20T17:36:10.458Z
mentioned in commit 2f9fdaf9
By Donovan Bourlard on 2019-06-20T17:31:49.708Z
mentioned in commit 5f4f3760239f9beaaec4f3651fc86bc95d3e73f7
By Donovan Bourlard on 2019-06-20T17:29:36.297Z
mentioned in merge request !44 (merged)
By Donovan Bourlard on 2019-06-20T17:25:25.508Z
mentioned in commit f5c8e5184ec3c01b51d90ceccec8a33789997ec5
By Donovan Bourlard on 2019-06-19T20:38:28.085Z
changed the description
By Donovan Bourlard on 2019-06-19T20:33:24.467Z
changed milestone to %10