Projet

Général

Profil

Bug #25655

un usager sans compte FC ne peut plus changer son mot de passe

Ajouté par Frédéric Péters il y a plus de 5 ans. Mis à jour il y a plus de 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
13 août 2018
Echéance:
% réalisé:

0%

Temps estimé:
Hors marché:
Non
Patch proposed:
Oui
Planning:

Description

(via #25654)

Dans #25535 :

+    def a2_hook_user_can_reset_password(self, user):
+        return user.fc_accounts.exists()

Ça fait qu'un usager qui n'a pas de compte FC ne peut plus changer son mot de passe. (???) (ou je rate un gros morceau)


Fichiers

Révisions associées

Révision c21a1610 (diff)
Ajouté par Frédéric Péters il y a plus de 5 ans

don't alter can_reset_password flag for users without an FC account (#25655)

Révision 06d4e913 (diff)
Ajouté par Frédéric Péters il y a presque 5 ans

don't alter can_reset_password flag for users without an FC account (#25655)

Historique

#1

Mis à jour par Frédéric Péters il y a plus de 5 ans

(sur le Saas de prod pour débloquer les choses je viens de modifier ce code pour faire "return True" ...).

#2

Mis à jour par Frédéric Péters il y a plus de 5 ans

Quand pas de compte FC, ça renvoie None, pour laisser get_user_flag continuer sa route (vérif par rapport à l'OU).

#3

Mis à jour par Thomas Noël il y a plus de 5 ans

J'ai la même lecture que toi et ton patch me semble bon... mais je préférerai qu'un tiers sur-valide.

Car le test ajouté par #25535 n'aurait pas dû passer.

#4

Mis à jour par Frédéric Péters il y a plus de 5 ans

Car le test ajouté par #25535 n'aurait pas dû passer.

Il me semble qu'il échouerait si models.FcAccount.objects.create(user=user, sub='xxx', token='aaa') n'était pas présent; qu'en l'état il ne joue pas la situation où utilisateur existe sans liaison FC.

#5

Mis à jour par Thomas Noël il y a plus de 5 ans

Je dois rater un truc simple, parce que

def test_password_reset(app, mailoutbox):
    user = User.objects.create(email='john.doe@example.com')
    response = app.get('/login/')
    response = response.click('Reset it!').maybe_follow()

pour moi l'utilisateur existe ici sans liaison FC, et on a quand même le "Reset it" qui marche... non ? (ne jamais partir en vacances)

#6

Mis à jour par Frédéric Péters il y a plus de 5 ans

Oui c'est au retour, après avoir cliqué sur le lien, que ça foire.

#7

Mis à jour par Thomas Noël il y a plus de 5 ans

(largué je suis, je cède la place à un tiers, comme dit plus haut)

#9

Mis à jour par Thomas Noël il y a plus de 5 ans

  • Statut changé de Solution proposée à Solution validée
#10

Mis à jour par Thomas Noël il y a plus de 5 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit c21a16108a1065437b6271fadc09023fd0c4a660
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Mon Aug 13 11:48:13 2018 +0200

    don't alter can_reset_password flag for users without an FC account (#25655)

#12

Mis à jour par Thomas Noël il y a plus de 5 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

publié en hotfix, installation sur les prod.

#15

Mis à jour par Benjamin Dauvergne il y a plus de 5 ans

  • Statut changé de Solution déployée à Fermé

Formats disponibles : Atom PDF