Project

General

Profile

Development #51268

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

Added by Loïc Dachary over 3 years ago. Updated over 3 years ago.

Status:
Fermé
Priority:
Normal
Category:
LDAP
Target version:
-
Start date:
18 February 2021
Due date:
% Done:

100%

Estimated time:
Patch proposed:
No
Planning:
No

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


Files

Associated revisions

Revision 2048d0d0 (diff)
Added by Loïc Dachary over 3 years ago

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

Fixes: #51268

License: MIT

History

#2

Updated by Loïc Dachary over 3 years ago

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

Updated by Benjamin Dauvergne over 3 years ago

  • Tracker changed from Support to Development
#4

Updated by Benjamin Dauvergne over 3 years ago

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

Updated by Loïc Dachary over 3 years ago

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

#7

Updated by Benjamin Dauvergne over 3 years ago

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

#9

Updated by Benjamin Dauvergne over 3 years ago

  • Status changed from Nouveau to Solution validée
#10

Updated by Loïc Dachary over 3 years ago

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

Updated by Valentin Deniaud over 3 years ago

  • Status changed from Solution validée to 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

Updated by Loïc Dachary over 3 years ago

  • % Done changed from 0 to 100
#13

Updated by Frédéric Péters over 3 years ago

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

Also available in: Atom PDF