Projet

Général

Profil

Bug #9162

Collision between LDAP attributs and User fields in get_users()

Ajouté par Benjamin Dauvergne il y a plus de 8 ans. Mis à jour il y a plus de 6 ans.

Statut:
Fermé
Priorité:
Haut
Assigné à:
Catégorie:
-
Version cible:
Début:
01 décembre 2015
Echéance:
11 décembre 2015
% réalisé:

100%

Temps estimé:
Patch proposed:
Non
Planning:

Description

get_users() does setattr(user, key, value) for each LDAP attribut (for a currently unknown reason, but certainly wrong), it must be removed. If an LDAP attribute is named ou for example (which is faily frequent) it produces a traceback since User.ou only accepts objects of type OrganizationalUnit.

Traceback (most recent call last):
  File "/usr/lib/authentic2/manage.py", line 21, in <module>
    execute_from_command_line(sys.argv[:1] + argv)
  File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 385, in execute_from_command_line
    utility.execute()
  File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 377, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 288, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 338, in execute
    output = self.handle(*args, **options)
  File "/usr/lib/python2.7/dist-packages/authentic2/management/commands/sync-ldap-users.py", line 14, in handle
    for user in LDAPBackend.get_users():
  File "/usr/lib/python2.7/dist-packages/authentic2/backends/ldap_backend.py", line 948, in get_users
    setattr(user, name, value)
  File "/usr/lib/python2.7/dist-packages/django/db/models/fields/related.py", line 597, in __set__
    self.field.rel.to._meta.object_name,
ValueError: Cannot assign "[u'com', u'rh']": "LDAPUser.ou" must be a "OrganizationalUnit" instance.

Révisions associées

Révision a9e3a234 (diff)
Ajouté par Benjamin Dauvergne il y a plus de 8 ans

ldap: do not copy LDAP attributes directly on the user object (fixes #9162)

Historique

#1

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

  • Echéance mis à 11 décembre 2015
  • Priorité changé de Normal à Haut
#2

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

  • Version cible mis à 2.2.0
#3

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

  • Statut changé de Nouveau à Résolu (à déployer)
  • % réalisé changé de 0 à 100
#4

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

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

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

  • Statut changé de Solution déployée à Fermé

Formats disponibles : Atom PDF