Project

General

Profile

Development #69890

custom_user : récupération du compte par envoi d’un code au numéro vérifié lorsque le mot de passe a été oublié par l’usager

Added by Paul Marillonnet 8 months ago. Updated about 1 month ago.

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

0%

Estimated time:
Patch proposed:
Yes
Planning:
No

Description

Dans #69223 on prévoit une séquence d’envoi d’un code de vérification du numéro de téléphone de l’usager à l’enregistrement.
Il faudrait une séquence similaire pour amener à l’écran de redéfinition du mot de passe, lorsque celui-ci a été oublié par l’usager.


Files


Related issues

Related to Publik - Development #49212: Création de compte avec un numéro de téléphone mobileEn cours01 October 2021

Actions

History

#1

Updated by Paul Marillonnet 8 months ago

  • Related to Development #49212: Création de compte avec un numéro de téléphone mobile added
#2

Updated by Paul Marillonnet 6 months ago

  • Status changed from Nouveau to En cours
  • Assignee set to Paul Marillonnet

C’était bloqué par #69223 pour la partie challenge de vérification du numéro de téléphone par envoi d’un code, maintenant validée. Je peux avancer ici.

#3

Updated by Paul Marillonnet 5 months ago

0001 les modifications sur le modèle SMSCode, pour y inclure :
· le lien vers l’utilisateur émetteur de la demande,
· le flag pour indiquer que le code qui est créé est faux, ce qui permet de poursuivre la tentative de changement de mot de passe même lorsqu’aucun compte n’est trouvé (et donc ne pas révéler cette absence de compte connu pour le numéro saisi).

0002 les utilitaires d’envoi de SMS de changement de mot de passe.
0003 l’ajout du champ de téléphone au formulaire de demande de changement de mot de passe.
0004 pour le traitement de ce numéro de téléphone si saisi dans le formulaire de demande de changement de mot de passe.
0005 pour l’adaptation de la vue de saisie du code reçu (qui servait pour l’instant uniquement à la création de compte) et la validation du changement de mot de passe.

#4

Updated by Benjamin Dauvergne 3 months ago

Paul Marillonnet a écrit :

· le flag pour indiquer que le code qui est créé est faux, ce qui permet de poursuivre la tentative de changement de mot de passe même lorsqu’aucun compte n’est trouvé (et donc ne pas révéler cette absence de compte connu pour le numéro saisi).

Je n'ai juste pas compris ce point, on a pas ça pour les mails qu'est-ce qui change ici ?

#5

Updated by Paul Marillonnet 3 months ago

Benjamin Dauvergne a écrit :

Paul Marillonnet a écrit :

· le flag pour indiquer que le code qui est créé est faux, ce qui permet de poursuivre la tentative de changement de mot de passe même lorsqu’aucun compte n’est trouvé (et donc ne pas révéler cette absence de compte connu pour le numéro saisi).

Je n'ai juste pas compris ce point, on a pas ça pour les mails qu'est-ce qui change ici ?

Parce que pour les emails, pour ne pas donner d’indication sur l’existence ou non du compte dont on souhaite récupérer le mot de passe, il suffit de dire “Ok, si le compte existe pour cette adresse, un courriel de ré-initialisation a été envoyé à cette adresse”.

Pour la récupération par num de tél, on peut aussi dire la même chose “Si un compte existe pour ce num alors un code a été envoyé à été envoyé par SMS à ce numéro”, mais il faut tout de même basculer directement sur le formulaire de saisie (toujours dans l’idée qu’on ne révèle pas si le compte existe ou non), et pour ce faire il faut générer un jeton. On stocke toutefois l’information que ce jeton est faux, pour se simplifier la vie.

#6

Updated by Benjamin Dauvergne 2 months ago

Toujours pas compris, pourquoi faut-il créer un faux code ? Si quelqu'un n'est pas dans la base soit on envoie rien soit comme pour les mails on envoie un SMS qui dit "vous n'avez pas de compte, pour en créer un cliquez ici.". Vu le coût des SMS je dirai bien de ne rien envoyer.

PS: c'est dans ces cas là que le système inverse ou ce serait les gens qui nous enverraient un code depuis leur mobile sur un numéro dédié serait plus pratique, c'est gratuit, on peut en faire des liens1 sur les téléphones, ça valide que la personne possède bien le numéro et nous permet d'afficher immédiatement "Vous n'avez pas de compte, vous en voulez un ?".

[1]: https://www.rfc-editor.org/rfc/rfc5724

#7

Updated by Paul Marillonnet 2 months ago

Benjamin Dauvergne a écrit :

Toujours pas compris, pourquoi faut-il créer un faux code ? Si quelqu'un n'est pas dans la base soit on envoie rien soit comme pour les mails on envoie un SMS qui dit "vous n'avez pas de compte, pour en créer un cliquez ici.". Vu le coût des SMS je dirai bien de ne rien envoyer.

Actuellement dans la série de commits on envoie rien, juste on génère une URL opaque comme si le numéro était connu d’a2, cette URL présente un formulaire de saisie du "code que vous avez reçu par SMS, si ce compte existe", tout en sachant pertinemment qu’il n’y a eu ni code ni SMS. C’est ce que je pense être le miroir de ce qu’on a déjà avec les emails, i.e. ne pas faire du formulaire de mot de passe oublié un oracle sur l’existence des comptes.

#8

Updated by Paul Marillonnet 2 months ago

  • Status changed from Solution proposée to En cours

Vu en privé avec Benj’ : je vais rebaser et créer une PR.

#9

Updated by Robot Gitea 2 months ago

Paul Marillonnet (pmarillonnet) a ouvert une pull request sur Gitea concernant cette demande :

#10

Updated by Robot Gitea 2 months ago

  • Status changed from En cours to Solution proposée
#11

Updated by Robot Gitea about 1 month ago

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

Benjamin Dauvergne (bdauvergne) a approuvé une pull request sur Gitea concernant cette demande :

#12

Updated by Robot Gitea about 1 month ago

  • Status changed from Solution validée to En cours

Benjamin Dauvergne (bdauvergne) a relu et demandé des modifications sur une pull request sur Gitea concernant cette demande :

#13

Updated by Robot Gitea about 1 month ago

  • Status changed from En cours to Solution proposée
#14

Updated by Robot Gitea about 1 month ago

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

Benjamin Dauvergne (bdauvergne) a approuvé une pull request sur Gitea concernant cette demande :

#15

Updated by Robot Gitea about 1 month ago

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

Paul Marillonnet (pmarillonnet) a mergé une pull request sur Gitea concernant cette demande :

#16

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