Project

General

Profile

Development #69989

Section "Changement de mot de passe" - NOK (point 26)

Added by Brice Mallet 4 months ago. Updated about 1 month ago.

Status:
Solution déployée
Priority:
Normal
Target version:
-
Start date:
07 October 2022
Due date:
% Done:

0%

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

Description

Un 26ème point ajouté, le 29/09, par la DINUM à la 2ème passe de la recette "Nouvelle certification".

26. Section "Changement de mot de passe" - NOK
https://connexion-angouleme.test.entrouvert.org/accounts/password/change/
Je rajoute ce point, car je pensais que cette section ne s'affichait pas en cas de connexion via FranceConnect, mais en fait si (voir screen ci-dessous).
Il faut donc indiquer qu'il s'agit du mot de passe du compte local, qu’il n’y a pas de lien avec FranceConnect. 
Merci donc d'ajouter la phrase suivante sous le titre : « Attention, ce mot de passe est celui de votre compte local et en aucun cas celui du compte que vous utilisez au travers de FranceConnect. Il vous servira uniquement lorsque vous vous connecterez avec votre adresse mail plutôt que via FranceConnect. »
Déroulé :
  1. "s'identifier FC" avec test/123 sur https://connexion-angouleme.test.entrouvert.org/login/
  2. dans https://connexion-angouleme.test.entrouvert.org/accounts/ "Gestion du compte" : 3 lignes et "Modifier le mot de passe" n'apparaît pas : OK
  3. "Supprimer la liaison", choisir un mot de passe local, "Délier"
  4. retour sur https://connexion-angouleme.test.entrouvert.org/accounts/ "Gestion du compte" : 4 lignes dont "Modifier le mot de passe" : OK
  5. "Lier votre compte utilisateur à FranceConnect." avec clic sur bouton FC, s'identifier dans FC avec test/123
  6. retour sur https://connexion-angouleme.test.entrouvert.org/accounts/ "Gestion du compte" : 4 lignes dont "Modifier le mot de passe"
    => et là DINUM considère que problème et qu'il faudrait donc ajouter : " Attention, ce mot de passe est celui de votre compte local et en aucun cas celui du compte que vous utilisez au travers de FranceConnect. Il vous servira uniquement lorsque vous vous connecterez avec votre adresse mail plutôt que via FranceConnect. "

Files

0001-auth_fc-store-id_token-in-session-when-linking-69989.patch (1.28 KB) 0001-auth_fc-store-id_token-in-session-when-linking-69989.patch Benjamin Dauvergne, 22 November 2022 03:35 PM
0002-auth_fc-show-warning-on-password-change-page-if-user.patch (2.47 KB) 0002-auth_fc-show-warning-on-password-change-page-if-user.patch Benjamin Dauvergne, 22 November 2022 03:35 PM
0001-auth_fc-store-id_token-in-session-when-linking-69989.patch (1.28 KB) 0001-auth_fc-store-id_token-in-session-when-linking-69989.patch Benjamin Dauvergne, 22 November 2022 03:37 PM
0003-translation-update-69989.patch (1.77 KB) 0003-translation-update-69989.patch Benjamin Dauvergne, 22 November 2022 03:37 PM
0002-auth_fc-show-warning-on-password-change-page-if-user.patch (2.47 KB) 0002-auth_fc-show-warning-on-password-change-page-if-user.patch Benjamin Dauvergne, 22 November 2022 03:37 PM
0001-auth_fc-store-id_token-in-session-when-linking-69989.patch (1.28 KB) 0001-auth_fc-store-id_token-in-session-when-linking-69989.patch Benjamin Dauvergne, 22 November 2022 09:20 PM
0003-translation-update-69989.patch (1.77 KB) 0003-translation-update-69989.patch Benjamin Dauvergne, 22 November 2022 09:20 PM
0002-auth_fc-show-warning-on-password-change-page-if-user.patch (1.94 KB) 0002-auth_fc-show-warning-on-password-change-page-if-user.patch Benjamin Dauvergne, 22 November 2022 09:20 PM
0001-auth_fc-store-id_token-in-session-when-linking-69989.patch (1.28 KB) 0001-auth_fc-store-id_token-in-session-when-linking-69989.patch Benjamin Dauvergne, 23 November 2022 10:48 AM
0003-translation-update-69989.patch (1.75 KB) 0003-translation-update-69989.patch Benjamin Dauvergne, 23 November 2022 10:48 AM
0002-auth_fc-show-warning-on-password-change-page-if-user.patch (1.92 KB) 0002-auth_fc-show-warning-on-password-change-page-if-user.patch Benjamin Dauvergne, 23 November 2022 10:48 AM
0001-auth_fc-store-id_token-in-session-when-linking-69989.patch (1.28 KB) 0001-auth_fc-store-id_token-in-session-when-linking-69989.patch Benjamin Dauvergne, 23 November 2022 11:56 AM
0003-translation-update-69989.patch (1.75 KB) 0003-translation-update-69989.patch Benjamin Dauvergne, 23 November 2022 11:56 AM
0002-auth_fc-show-warning-on-password-change-page-if-user.patch (3.45 KB) 0002-auth_fc-show-warning-on-password-change-page-if-user.patch Benjamin Dauvergne, 23 November 2022 11:56 AM

Related issues

Related to Plugin FS FranceConnect - Development #68360: Cinématique de Réconciliation de compte - NOKSolution déployée23 August 2022

Actions
Related to Plugin FS FranceConnect - Project management #68358: Demandes d'évolution pour la nouvelle certification FranceConnectEn cours23 August 2022

Actions

Associated revisions

Revision 89b52606 (diff)
Added by Benjamin Dauvergne 2 months ago

auth_fc: store id_token in session when linking (#69989)

Password change view is hidden only if the current session was opened
with FranceConnect and if the id_token is visible in the session, this
change will enforce the second condition when during the same session
the account is unlinked and linked again to FranceConnect.

It will also permit to launch a logout if the link fails.

Revision 9171c30f (diff)
Added by Benjamin Dauvergne 2 months ago

auth_fc: show warning on password change page if user is linked to FranceConnect (#69989)

Revision a8ebccc5 (diff)
Added by Benjamin Dauvergne 2 months ago

translation update (#69989)

History

#2

Updated by Brice Mallet 4 months ago

#3

Updated by Brice Mallet 4 months ago

#6

Updated by Benjamin Dauvergne 2 months ago

  • Assignee set to Benjamin Dauvergne
#7

Updated by Benjamin Dauvergne 2 months ago

Ceinture et bretelle :
  • la vue de mot de passe ne sera plus visible dans le cas particulier où on s'est connecté avec FranceConnect, puis délier, puis relier.
  • si jamais le compte courant est relié à FranceConnect mais que la vue de changement de mot de passe est visible (ex.: on s'est connecté via son email/mot de passe et pas par FranceConnect) alors on affiche un disclaimer.
#9

Updated by Serghei Mihai 2 months ago

    def get(self, request, *args, **kwargs):
        return super().get(request, *args, **kwargs)

n'est pas inutile ?

#11

Updated by Paul Marillonnet 2 months ago

Dans 0001 peut-être moyen de factoriser du code avec ce qui est fait dans le cas où il y a login et non pas liaison dans le code à la fin handle_authorization_response

        if request.user.is_authenticated:
            return self.link(request)
        else:
            return self.login(request)
?
Par exemple dans le cas login je vois qu’en plus il y a paramétrage de l’expiration de la session, après stockage de l’ID token :
        # set session expiration policy to EXPIRE_AT_BROWSER_CLOSE
        request.session.set_expiry(0)
(dans finish_login) qui n’est pas repris dans 0001 ?

0002 ok, peut-être juste
· s/not the one from the account used through FranceConnect/not the one from your FranceConnect provider/
· s/connect with locally/log in locally/
dans le message affiché à l’usager ?

#12

Updated by Benjamin Dauvergne 2 months ago

Paul Marillonnet a écrit :

Dans 0001 peut-être moyen de factoriser du code avec ce qui est fait dans le cas où il y a login et non pas liaison dans le code à la fin handle_authorization_response
[...] ?
Par exemple dans le cas login je vois qu’en plus il y a paramétrage de l’expiration de la session, après stockage de l’ID token :
[...] (dans finish_login) qui n’est pas repris dans 0001 ?

Ça ne concerne qu'une session ouverte par FranceConnect, la session ayant pu être ouverte via mot de passe, je préfère ne pas changer (#40479).

0002 ok, peut-être juste
· s/not the one from the account used through FranceConnect/not the one from your FranceConnect provider/
· s/connect with locally/log in locally/
dans le message affiché à l’usager ?

Ok.

#14

Updated by Paul Marillonnet 2 months ago

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

Benjamin Dauvergne a écrit :

Ça ne concerne qu'une session ouverte par FranceConnect, la session ayant pu être ouverte via mot de passe, je préfère ne pas changer (#40479).

Ok.

Ok.

Ok, peut-être juste un s/mail/courriel/ dans le message traduit dans 0003 puisque cela semble être la convention dans authentic.

Ack.

#16

Updated by Paul Marillonnet 2 months ago

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

Benjamin Dauvergne a écrit :

Oublié de pousser le test.

Magnifique. Reste juste pylint à contenter :

tests/auth_fc/test_views.py:25: [C1802(use-implicit-booleaness-not-len), test_password_change_view_with_fc] Do not use `len(SEQUENCE)` without comparison to determine if a sequence is empty

et c’est bon.

#17

Updated by Benjamin Dauvergne 2 months ago

  • Status changed from Solution validée to Résolu (à déployer)
commit a8ebccc5aa8ec83f9db0e0edee8b309be40def28
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Tue Nov 22 15:37:37 2022 +0100

    translation update (#69989)

commit 9171c30febcb58c6af4a2514ebfbcda64d8b33db
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Tue Nov 22 15:34:26 2022 +0100

    auth_fc: show warning on password change page if user is linked to FranceConnect (#69989)

commit 89b526066d6373e741c4843c6c93632febc8d2cb
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Tue Nov 22 15:08:07 2022 +0100

    auth_fc: store id_token in session when linking (#69989)

    Password change view is hidden only if the current session was opened
    with FranceConnect and if the id_token is visible in the session, this
    change will enforce the second condition when during the same session
    the account is unlinked and linked again to FranceConnect.

    It will also permit to launch a logout if the link fails.
#18

Updated by Transition automatique about 1 month ago

  • Status changed from Résolu (à déployer) to Solution déployée

Also available in: Atom PDF