mission-apprentissage / mission.apprentissage

Concernant l'équipe mission apprentissage
0 stars 0 forks source link

déconnexion application ko #48

Open houssinegart opened 2 years ago

houssinegart commented 2 years ago

la déconnexion du portail de service ne fonctionne pas

en cliquant sur le lien de déconnexion, l'utilisateur reste connecté à l'application. En rechargeant la page, on constate que l'utilisateur est encore connecté.

houssinegart commented 2 years ago

mail d'Etienne Lambert du 08/06/22 : _AU vu du comportement constaté, il semble que le logout ne soit fait que auprès de CADEP (https://contrat.apprentissage.beta.gouv.fr/api/v1/auth/logout) et pas auprès du SSO (https://mesdemarches.emploi.gouv.fr/identification/logout). La session SSO reste donc ouverte, et il n’est pas possible de changer de compte.

L’attendu est l’utilisation du SLO (Single Log Out). La déconnexion se fait auprès du SSO uniquement, et le SSO se charge de demander la déconnexion auprès des applications. CAS est configuré pour gérer le SLO en back channel ; l’appel au logout du SSO déclenche l’envoi d’une requête POST à l’application qui doit ensuite être traité. Sur nos applications, ce sont les filtres fournis par CAS qui s’en occupent. Il est possible que l’outil utilisé par CADEP pour faire la connexion au CAS le gère aussi, mais je ne saurais pas le dire. Note que cette stratégie nécessite que le CAS puisse contacter CADEP, ce qui n’est pas possible par défaut. Une intervention de l’exploitation est nécessaire.

Une option simple mais incomplète est de gérer la déconnexion indépendamment, ie. une première requête au logout de CADEP comme actuellement puis une seconde au logout du SSO. Toutefois cela impliquerait que la déconnexion du SSO n’entrainerait pas la déconnexion de CADEP. Il est donc possible assez facilement d’être connecté au portail avec un utilisateur A et à CADEP avec un utilisateur B, ce qui entrainera des comportements anormaux. C’est pourquoi nous recommandons de gérer la déconnexion « back channel »._