Projet

Général

Profil

Development #51268

ldap: redirect to /password/change if password is about to expire

Ajouté par Loïc Dachary il y a environ 3 ans. Mis à jour il y a environ 3 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
LDAP
Version cible:
-
Début:
18 février 2021
Echéance:
% réalisé:

100%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

Lorsque la password policy indique que le mot de passe est sur le point d'expirer ou bien s'il a déjà expiré et qu'il y a un délai de grace, l'utilisateur va parvenir à se connecter. Mais s'il est redirigé vers une application qui est hors d'authentic, il ne pourra pas voir l'avertissement concernant l'expiration. Un middleware pourrait détecter cette condition et rediriger l'utilisateur vers la page de changement de mot de passe dans ce cas.

Voir aussi la discussion correspondante sur la liste de diffusion https://listes.entrouvert.com//arc/authentic/2021-02/msg00004.html


Fichiers

Révisions associées

Révision 2048d0d0 (diff)
Ajouté par Loïc Dachary il y a environ 3 ans

ldap: redirect /password/change if it is about to expire (#51268)

Fixes: #51268

License: MIT

Historique

#2

Mis à jour par Loïc Dachary il y a environ 3 ans

J'ai classé ce ticket dans "Support" au lieu de "Developement"par mégarde. Mais je ne crois pas avoir les droits pour corriger mon erreur. Est-ce qu'une personne surpuissante aurait la bonté de le faire pour moi ? Merci par avance et désolé du dérangement.

#3

Mis à jour par Benjamin Dauvergne il y a environ 3 ans

  • Tracker changé de Support à Development
#4

Mis à jour par Benjamin Dauvergne il y a environ 3 ans

Plutôt qu'un middleware tu pourrais poser directement un flag sur request, ex.: request.needs_password_change = True et gérer ça ensuite dans authentic2.authenticators.LoginPasswordAuthenticator.login en modifiant la réponse en cas d'authentification réussie (il faut récupérer la redirection dans response.url quand l'authentification a réussie et rediriger vers utils.redirect('password_change', params={'next': response.url}, resolve=True).

#5

Mis à jour par Loïc Dachary il y a environ 3 ans

C'est en effet plus simple, merci pour la suggestion. Et le code qu'il suffit de copier coller. Tellement facile du coup :-)

#7

Mis à jour par Benjamin Dauvergne il y a environ 3 ans

Je pense qu'on peut se passer de ça " # Django 1.7, same_origin is bugged; testserver != localhost:80" désormais.

#8

Mis à jour par Loïc Dachary il y a environ 3 ans

Mince, plus de support pour django 1.7 ? Un mythe s'écroule.

#9

Mis à jour par Benjamin Dauvergne il y a environ 3 ans

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

Mis à jour par Loïc Dachary il y a environ 3 ans

Est-ce qu'il y a un élément qui empêche ce patch de passer dans l'état Résolu (à déployer) ? Si c'est le cas je suis prêt à y travailler.

#11

Mis à jour par Valentin Deniaud il y a environ 3 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 2048d0d004dfae6dcb61dc2d336925e96abc121f
Author: Loïc Dachary <ldachary@easter-eggs.com>
Date:   Thu Feb 18 18:12:22 2021 +0100

    ldap: redirect /password/change if it is about to expire (#51268)

    Fixes: #51268

    License: MIT
#12

Mis à jour par Loïc Dachary il y a environ 3 ans

  • % réalisé changé de 0 à 100
#13

Mis à jour par Frédéric Péters il y a environ 3 ans

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

Formats disponibles : Atom PDF