Project

General

Profile

Development #71607

Sur un link ou un login avec création potente de compte qui échoue on doit lancer un logout FC

Added by Benjamin Dauvergne 8 days ago. Updated 3 days ago.

Status:
Résolu (à déployer)
Priority:
Normal
Target version:
-
Start date:
23 November 2022
Due date:
% Done:

0%

Estimated time:
Hors marché:
No
Patch proposed:
Yes
Planning:
No

Description

Pour ne pas laisser une session ouverte.


Files

Associated revisions

Revision cfefbd55 (diff)
Added by Benjamin Dauvergne 3 days ago

tests: do not follow redirects in login_with_fc (#71607)

Because it will break when we introduce a redirection to FranceConnect
to close the FranceConnect session on failure to link.

Revision d19ac194 (diff)
Added by Benjamin Dauvergne 3 days ago

auth_fc: close FranceConnect session when linking fails (#71607)

History

#1

Updated by Benjamin Dauvergne 8 days ago

  • Assignee set to Benjamin Dauvergne
#2

Updated by Benjamin Dauvergne 8 days ago

À appliquer au dessus de #69989.

#3

Updated by Paul Marillonnet 8 days ago

Hmm, le patch me convient mais je ne comprends pas ce que les handle_logout() sont censés prouver dans les tests :
ma lecture du patch me laisse entendre que ce logout FC est automatique sur échec de connexion ou de liaison, et intuitivement je me dis que dans les tests au lieu d’un handle_logout explicite (lequel construit lui-même l’url de déconnexion FC), on devrait pouvoir tester simplement qu’il y a une redirection à l’issue de laquelle on est bien déconnecté et la session FC a été nettoyée.

#4

Updated by Benjamin Dauvergne 8 days ago

Paul Marillonnet a écrit :

Hmm, le patch me convient mais je ne comprends pas ce que les handle_logout() sont censés prouver dans les tests :
ma lecture du patch me laisse entendre que ce logout FC est automatique sur échec de connexion ou de liaison, et intuitivement je me dis que dans les tests au lieu d’un handle_logout explicite (lequel construit lui-même l’url de déconnexion FC), on devrait pouvoir tester simplement qu’il y a une redirection à l’issue de laquelle on est bien déconnecté et la session FC a été nettoyée.

Ça teste qu'on ne perd pas l'URL de retour qui dépend du state.

#5

Updated by Paul Marillonnet 7 days ago

Benjamin Dauvergne a écrit :

Ça teste qu'on ne perd pas l'URL de retour qui dépend du state.

Ok, je vois cette partie dans handle_logout mais en plus de ça, à la toute fin de cette fonction il y a quand même un clic

        return app.get(reverse('fc-logout') + '?state=' + self.state)
qui empêche de tester si le logout_and_redirect() a eu lieu de lui même sur échec, non ?

#6

Updated by Paul Marillonnet 7 days ago

  • Status changed from Solution proposée to Solution validée

Paul Marillonnet a écrit :

Ok, je vois cette partie dans handle_logout mais en plus de ça, à la toute fin de cette fonction il y a quand même un clic
[...] qui empêche de tester si le logout_and_redirect() a eu lieu de lui même sur échec, non ?

Ah, ok, le temps que la caféine fasse effet j’ai capté, c’est bon pour moi.

#7

Updated by Benjamin Dauvergne 3 days ago

  • Status changed from Solution validée to Résolu (à déployer)
commit d19ac19469f2b773d1e49e88312cdd197fe72dc2
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Wed Nov 23 11:55:45 2022 +0100

    auth_fc: close FranceConnect session when linking fails (#71607)

commit cfefbd553ccda121a89a74737ce703e80b2230b7
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Wed Nov 23 13:18:35 2022 +0100

    tests: do not follow redirects in login_with_fc (#71607)

    Because it will break when we introduce a redirection to FranceConnect
    to close the FranceConnect session on failure to link.

Also available in: Atom PDF