def ldap_login(username, password, remember=False): if DEBUG and not USE_LDAP: try: user = User.objects.get(username=username) user.admin = True except: user = User(username=username, name=username, admin=True, active=True, email='*****@*****.**').save() warning = 'User did not exist, admin user created.' flash(warning) login_user(user, remember=remember) return True data = ldap_authenticate(username, password) if data: try: user = User.objects.get(username=username) except: user = User(username=username) user.name = str(data[0]['cn']) if data[0]['mail']: user.email = str(data[0]['mail']) else: print('A user has no mail entry in LDAP!') user.active = True user.save() login_user(user, remember=remember) return True else: return False
def ldap_login(username, password, remember=False): if config.DEBUG and not config.USE_LDAP: try: user = User.objects.get(username=username) user.admin = True except: user = User(username=username, name=username, admin=True, active=True, email='*****@*****.**').save() warning = 'User did not exist, admin user created.' flash(warning) login_user(user, remember=remember) return True if username == 'guest': return False try: user_dn = get_user_dn(username) except IndexError: # search didnt return anything return False data = ldap_authenticate(user_dn, username, password) if data: username = data[0]['uid'][0] try: user = User.objects.get(username=username) except Exception as e: user = User(username=username) user.name = str(data[0]['cn']) if data[0]['mail']: user.email = str(data[0]['mail']) else: print('A user has no mail entry in LDAP!') user.active = True user.save() login_user(user, remember=remember) return True else: return False