GeoNature icon indicating copy to clipboard operation
GeoNature copied to clipboard

Compte désactivé = erreur 490

Open jpm-cbna opened this issue 3 years ago • 3 comments

Version Develop

Description du bug Lorsqu'une personne avec un compte désactivé essaye de se connecter, elle obtient une message d'erreur "490 - No Reason Phrase id requete: undefined".

Comportement attendue Plutôt que ce message d'erreur n'apportant aucune information, il faudrait afficher une message du style "Connexion refusée - Votre compte est désactivé".

Comment reproduire Via UsersHub désactiver un compte, puis tenter de se connecter avec sur GeoNature. Ci-dessous un exemple du message obtenu:

Screenshot_20220831_103119

jpm-cbna avatar Aug 31 '22 08:08 jpm-cbna

Je dirais que le comportement d'un compte désactivé doit être le même que celui d'un compte non existant, du coup effectivement le statut 490 n'est pas forcément celui consacré mais si on change tout ça une 401 dans les deux serait le plus pertinent

cecchi-a avatar Aug 31 '22 08:08 cecchi-a

mais si on change tout ça une 401 dans les deux serait le plus pertinent

Oui, mais surtout au niveau du frontend, il faudrait afficher à l'utilisateur un message compréhensible !

jpm-cbna avatar Aug 31 '22 15:08 jpm-cbna

Il y a deux choses :

  • Que le compte soit désactivé ou que le couple login / mot de passe soit incorrecte, on a dans les deux cas cette 490 assez horrible. Il faudrait grandement simplifier le code d’authentification qui gère 12 exceptions différentes, pour renvoyer des 403 correctes. Cela se passe du côté de UsersHub-authentification-module. Le mieux étant encore d’utiliser une bibliothèque d’authentification reconnue plutôt que de maintenir notre propre système d’authentification.
  • Il serait effectivement pas mal de distinguer des identifiants incorrectes vs un compte désactivé. Malheureusement, les comptes désactivés sont filtré par une vue, ne permettant pas au backend de savoir pourquoi il n’a pas trouvé l’identifiant recherché. Cela suppose donc une refonte relativement profonde du mécanisme d’authentification. Mais là encore, passer à l’utilisation d’une bibliothèque d’authentification reconnue serait le meilleur choix.

bouttier avatar Sep 01 '22 12:09 bouttier