Projet

Général

Profil

Bug #57574

messages d'erreur au retour d'un sso qui s'affichent au mauvais moment

Ajouté par Thomas Noël il y a plus de 2 ans. Mis à jour il y a plus de 2 ans.

Statut:
Rejeté
Priorité:
Normal
Assigné à:
Catégorie:
-
Version cible:
-
Début:
04 octobre 2021
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

J'ai un Authentic qui est SP d'un IdP SAML. Au retour de ce dernier, une erreur s'affiche sur la page /accounts/saml/login/ : « Aucun utilisateur trouvé pour l’identifiant SAML xxx »

Si on retourne sur /login, un autre message d'erreur s'affiche alors (en fait, le bon) : « /!\ la création de l’utilisateur a échoué sur un attribut obligatoire absent : unknown saml_attribute {'mapping': {'attribute': 'email', 'mandatory': True, 'saml_attribute': 'email'}} »

Il faudrait que ce message s'affiche en lieu et place du premier (et, éventuellement, qu'il soit un peu moins cabalistique)


Demandes liées

Lié à Intégrations graphiques Publik - Development #58205: templates/mellon/base.html, afficher les messagesFermé26 octobre 2021

Actions
Lié à Authentic 2 - Development #59519: virer mellon/base.html et corriger le paramètre template_baseFermé09 décembre 2021

Actions

Historique

#2

Mis à jour par Valentin Deniaud il y a plus de 2 ans

  • Assigné à mis à Valentin Deniaud

Le problème c'est que templates/mellon/user_not_found.html n'affiche pas les messages django, ajouter un bout de code dedans pour les afficher suffit à corriger le problème.

Mais grosse galère pour savoir où faire le patch.

Après investigation, dans publik-base-theme, templates/mellon/base.html, on trouve {% extends theme_base %}.
C'est pareil pour templates/authentic2/base.html, or ce dernier inclut la gestion explicite des messages, donc mettons qu'il s'agit de faire la même chose pour mellon. Je vais aller créer un ticket publik-base-theme.

(j'ai pendant un moment essayé de voir si ce theme_base ne pourrait pas intégrer un block messages mais c'est du code hobo qui va interroger une vue combo, j'ai l'impression que ça renvoie combo/page_template.html et manque de bol il y a déjà un block messages, j'ai jeté l'éponge là)

#3

Mis à jour par Valentin Deniaud il y a plus de 2 ans

#4

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

Dans src/authentic2_auth_saml/ il y a déjà un templates/mellon/base.html, ce n'est pas plutôt là qu'on devrait jouer ? Parce que c'est aussi dans authentic2_auth_saml que le « messages.error(...) » est fait ...?

#5

Mis à jour par Valentin Deniaud il y a plus de 2 ans

Thomas Noël a écrit :

Dans src/authentic2_auth_saml/ il y a déjà un templates/mellon/base.html

Eh non ce template est écrasé par celui de publik-base-theme, va savoir à quoi il sert, peut-être pour les tests ? Auquel cas je pourrais faire un patch en miroir ici, il sera décoratif pour ce qui est de nos déploiements mais il prouvera que ça marche.

#6

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

Valentin Deniaud a écrit :

je pourrais faire un patch en miroir ici, il sera décoratif pour ce qui est de nos déploiements mais il prouvera que ça marche.

Ca m'irait bien, à moi, ce patch miroir, pour rester un peu "consistant" dans Authentic2... (voire dans mellon ? J'y vois déjà actuellement un messages.warning alors que jamais on n'a de messages dans les templates)

#7

Mis à jour par Valentin Deniaud il y a plus de 2 ans

Thomas Noël a écrit :

Ca m'irait bien, à moi, ce patch miroir, pour rester un peu "consistant" dans Authentic2... (voire dans mellon ? J'y vois déjà actuellement un messages.warning alors que jamais on n'a de messages dans les templates)

En fait les templates héritent de gadjo/base.html, qui gère l'affichage des messages. Ici le bug c'était vraiment une histoire de thème...

Pour ce qui est d'avoir un test, c'est trop compliqué, reproduire le parcours jusqu'à cette erreur ce serait copier un bon bout des tests de mellon dans a2 (mocker un idp, tout ça, il n'y a rien (tu avais d'ailleurs fait la même remarque #33743#note-4)). J'ai quand même essayé d'écrire un test bête qui fasse un render du template, mais en fait ça prend celui de django-mellon et pas celui de authentic2_auth_saml, bref c'est un beau bordel.

#8

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

Ok, bien d'accord pour les chemins difficiles à suivre. Je pense qu'on peut rejeter ce ticket et basculer vers #58205

#9

Mis à jour par Valentin Deniaud il y a plus de 2 ans

  • Statut changé de Nouveau à Rejeté

À corriger dans #58205

#10

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

  • Lié à Development #59519: virer mellon/base.html et corriger le paramètre template_base ajouté

Formats disponibles : Atom PDF