Projet

Général

Profil

Development #42193

saml: ajouter l'extension "login-hint" dans la requete d'authentification vers l'idp lors de l'accès au backoffice

Ajouté par Serghei Mihai il y a presque 4 ans. Mis à jour il y a presque 4 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
28 avril 2020
Echéance:
03 juin 2020
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Dans le même esprit que cela a été fait dans mellon.
Valeur backoffice pour informer l'idp qu'il s'agit d'un accès au backoffice.


Fichiers


Demandes liées

Lié à Hobo - Development #42191: Poser un setting MELLON_LOGIN_HINTS pour toutes les briques n'ayant pas de frontFermé28 avril 2020

Actions

Révisions associées

Révision d4d4a682 (diff)
Ajouté par Serghei Mihai il y a presque 4 ans

saml: add login-hint extension on backoffice access (#42193)

Historique

#1

Mis à jour par Serghei Mihai il y a presque 4 ans

  • Lié à Development #42191: Poser un setting MELLON_LOGIN_HINTS pour toutes les briques n'ayant pas de front ajouté
#2

Mis à jour par Serghei Mihai il y a presque 4 ans

  • Assigné à mis à Serghei Mihai
#3

Mis à jour par Serghei Mihai il y a presque 4 ans

#4

Mis à jour par Frédéric Péters il y a presque 4 ans

next_url (login.msgRelayState en fait) pourrait contenir uniquement le chemin, c'est géré côté continue_to_after_url,

        elif relay_state:
            parsed_url = urlparse.urlparse(relay_state)
            scheme = parsed_url.scheme or request.get_scheme()
            netloc = parsed_url.netloc or request.get_server()
            after_url = urlparse.urlunsplit((scheme, netloc, parsed_url.path, parsed_url.query,
                                             parsed_url.fragment))

Ça devrait être géré également ici, histoire de ne pas casser de manière discrète au moment où seul un chemin sera passé.

#5

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

Le relaystate n'est pas signé au retour et comme on est dans la correction des open-redirection, sans vouloir casser des trucs existants, ça m'irait que soit soumis à la validation des URLs comme cancel_url et /login/?next=. La vrai bonne façon de faire c'est de ne passer qu'un jeton qui doit faire référence à une donnée en session ou alors signée la valeur, w.c.s. (ou tout SP) doit s'assurer que c'est bien lui qui a envoyé ce relay-state ou alors que ce n'est vraiment pas important (genre si seulement deux valeurs "front" ou "back" sont acceptés pour dire de rediriger en front ou en back).

Si on accepte juste les URLs locales (commençant par un slash unique) et ça ne casse rien ça me va aussi (et sinon ça serait bien ce soit géré correctement mais ça urge moins).

#6

Mis à jour par Frédéric Péters il y a presque 4 ans

La correction dans #43279 concerne déjà ça (i.e. il n'y a pas de vérification ajoutée dans /login/?next=... la vérification se fait après le tour de manège et l'extraction de l'url (passée de ?next= à relayState)).

Par rapport à ce ticket, donc, mon commentaire il est que next_url = login.msgRelayState... peut donner un chemin, et qu'il faut prendre en compte cette possibilité.

#7

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

Frédéric Péters a écrit :

La correction dans #43279 concerne déjà ça (i.e. il n'y a pas de vérification ajoutée dans /login/?next=... la vérification se fait après le tour de manège et l'extraction de l'url (passée de ?next= à relayState)).

Ok.

#10

Mis à jour par Serghei Mihai il y a presque 4 ans

  • Echéance mis à 03 juin 2020
#11

Mis à jour par Frédéric Péters il y a presque 4 ans

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

Ok, sans discuter que ça modifie ce qui était passé dans eo:next_url. (qu'il faudra veiller plus tard à retirer).

#12

Mis à jour par Serghei Mihai il y a presque 4 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit d4d4a682ab0ea260dc83117e3324bffa2c1f704a
Author: Serghei Mihai <smihai@entrouvert.com>
Date:   Tue May 26 14:09:33 2020 +0200

    saml: add login-hint extension on backoffice access (#42193)
#13

Mis à jour par Frédéric Péters il y a presque 4 ans

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

Formats disponibles : Atom PDF