Project

General

Profile

Développement #52670

ldap: réactiver les comptes LDAP s'ils réapparaissent

Added by Benjamin Dauvergne almost 4 years ago. Updated over 3 years ago.

Status:
Fermé
Priority:
Normal
Category:
-
Target version:
-
Start date:
02 April 2021
Due date:
% Done:

0%

Estimated time:
Patch proposed:
Yes
Planning:
No

Description

Un compte LDAP qui serait sorti du filtre et qui y revient va actuellement rester désactivé.


Files

Associated revisions

Revision 231f1e7b (diff)
Added by Benjamin Renard over 3 years ago

LDAPBackend: reactive user on login/synchronization if inactive (#52670)

History

#1

Updated by Benjamin Renard almost 4 years ago

Cf. #52917, je propose ici un patch réactivant les utilisateurs suite à connexion réussie et lors de la synchronisation.

#2

Updated by Benjamin Dauvergne almost 4 years ago

  • Status changed from Nouveau to En cours

Dans mon idée il faudrait noter que le compte inactivé l'a été pour absence lors d'une synchro et pas par un administrateur; parce que là ça veut dire qu'on ne peut plus bloquer un compte LDAP depuis l'administration. Ça suppose un champ supplémentaire deactivation_reason = models.TextField(...) où on pourrait mettre 'sync-ldap' et réagir en conséquence.

J'ai un autre ticket (#52672) pour supprimer les comptes désactivés au bout d'un certain temps (histoire que les soucis de synchro ne provoquent pas des catastrophes).

#3

Updated by Serghei Mihai almost 4 years ago

Benjamin Dauvergne a écrit :

Dans mon idée il faudrait noter que le compte inactivé l'a été pour absence lors d'une synchro et pas par un administrateur; parce que là ça veut dire qu'on ne peut plus bloquer un compte LDAP depuis l'administration. Ça suppose un champ supplémentaire deactivation_reason = models.TextField(...) où on pourrait mettre 'sync-ldap' et réagir en conséquence.

Je pensais plutôt à un deactivation_reason = models.CharField(choices=...) et dans choices avoir un identifiant technique de la raison de desactivation, exploitable dans le code, et un libellé traductible à afficher en backoffice.

#4

Updated by Benjamin Dauvergne almost 4 years ago

Les choices c'est surtout utile pour avoir une interface en front (faire des ModelForm), ça n'a aucun effet sur le modèle ou la base (on pourra toujours écrire user.deactivation_reason = 'coin') mais oui avoir des codes techniques comme ldap ou backoffice était bien ce à quoi je pensais, il faut par ailleurs l'ajouter aussi au journal qui note la désactivation.

#5

Updated by Benjamin Dauvergne over 3 years ago

  • Assignee set to Benjamin Dauvergne
#6

Updated by Benjamin Dauvergne over 3 years ago

#8

Updated by Serghei Mihai over 3 years ago

  • Status changed from Solution proposée to Solution validée

J'ai corrigé un dernier test et mis à jour la branche.
git pull et go.

#9

Updated by Benjamin Dauvergne over 3 years ago

  • Status changed from Solution validée to Résolu (à déployer)
commit 231f1e7b7c0124aedf1e1ab7462463c79aa1390f
Author: Benjamin Renard <brenard@easter-eggs.com>
Date:   Fri Apr 9 16:44:49 2021 +0200

    LDAPBackend: reactive user on login/synchronization if inactive (#52670)
#10

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