Projet

Général

Profil

0001-ldap-don-t-crash-on-duplicated-users-27697.patch

approche avec lookup exact d'abord - Frédéric Péters, 31 octobre 2018 10:23

Télécharger (1,54 ko)

Voir les différences:

Subject: [PATCH] ldap: don't crash on duplicated users (#27697)

 src/authentic2/backends/ldap_backend.py | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
src/authentic2/backends/ldap_backend.py
834 834
            external_id = self.build_external_id(eid_tuple, attributes)
835 835
            if not external_id:
836 836
                continue
837
            try:
838
                log.debug('lookup using external_id %r: %r', eid_tuple, external_id)
839
                return LDAPUser.objects.prefetch_related('groups').get(
840
                    userexternalid__external_id__iexact=external_id, userexternalid__source=block['realm'])
841
            except User.DoesNotExist:
842
                pass
837
            log.debug('lookup using external_id %r: %r', eid_tuple, external_id)
838
            user = LDAPUser.objects.prefetch_related('groups').filter(
839
                    userexternalid__external_id__iexact=external_id,
840
                    userexternalid__source=block['realm']).first()
841
            if user:
842
                return user
843 843

  
844 844
    def lookup_existing_user(self, username, block, attributes):
845 845
        for lookup_type in block['lookups']:
846
-