-
Bug
-
Résolution: Non résolu
-
Majeur
-
master
-
1
-
2
-
5
-
0,38
-
21
Le contrôle de la session K-Sup dans PHP ne tient pas compte de la déconnexion au niveau K-Sup
Le code "standard" des exemples (repris dans les implémentation client) fonctionne uniquement sur la première session K-Sup mise en session dans le PHP :
.... $bean = new sso(); if (array_key_exists("kticket", $_GET) && $_SESSION["KSESSION"] == "") { connecteurMgr::validerTicket($bean); } else { connecteurMgr::verifierSession($bean); } connecteurMgr::verifierCodeRetour($bean); ...
En cas de déconnexion côté K-Sup, le lien vers la session K-Sup dans le PHP est conservé.
En cas d'utilisation du connecteur, cela provoque une ré-authentification (transparente pour l'utilisateur) côté K-Sup, mais qui a pour effet de réafficher la page d'accueil du site courant.
Deux possibilités :
- lors de la déconnexion K-Sup, lancer une invalidation de la session PHP avec une URL dédiée
- Modifier l'algorithme de contrôle du SSO (par exemple, tenir compte du ticket prioritairement s'il est dans l'URL ou si la session est expirée coté K-Sup, utiliser le ticket de l'URL, etc....)