Projet

Général

Profil

« Précédent | Suivant » 

Révision be43214c

Ajouté par Josué Kouka il y a plus de 8 ans

fix crypted password importion (#9588)

Voir les différences:

mandayejs/mandaye/management/commands/migrate-ldap-users.py
2 2

  
3 3
import json
4 4
import ldif
5
import logging
5 6

  
6 7
from django.core.management.base import BaseCommand, CommandError
7 8
from django.db import IntegrityError
......
9 10

  
10 11
from mandayejs.mandaye.models import UserCredentials  
11 12

  
13
logger = logging.getLogger(__name__)
12 14

  
13 15
class Command(BaseCommand):
14 16
    args = '<ldif_file>'
......
33 35
        for data in parsed_data:
34 36
            data = { k : ''.join(v) for k,v in data.items()}
35 37
            try:
36
                user = User(username=data.get('idpUniqueID'), last_name=data.get('spLogin'))
38
                user, created = User.objects.get_or_create(username=data.get('idpUniqueID'), 
39
                        last_name=data.get('spLogin'))
37 40
                user.save()
38 41
                uc = UserCredentials(user=user, locators=json.loads(data.get('spPostValues')))
42
                uc.decrypt()
39 43
                uc.save()
40 44
                self.stdout.write('{idpUniqueID} imported'.format(**data))
45
                logger.debug('{idpUniqueID} imported'.format(**data))
41 46
            except (IntegrityError,) as e:
47
                logger.debug(e)
42 48
                continue
43 49

  

Formats disponibles : Unified diff