This repository has been archived on 2026-10-23. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
2016-01-27 11:19:07 +01:00

41 lines
1.3 KiB
Python

# -*- coding: utf-8 -*-
from __future__ import unicode_literals
import logging
from neuf_ldap.utils import ldap_create
from passlib.hash import mysql41
from inside.models import InsideUser, UserUpdate
logger = logging.getLogger(__name__)
def mysql_create(raw_password):
return mysql41.encrypt(raw_password)
def log_inside_userupdate(username, message):
try:
user = InsideUser.objects.get(ldap_username=username)
except InsideUser.DoesNotExist:
logger.warning('Could not log update in Inside for user with username {}'.format(username))
return
UserUpdate.objects.create(user_updated=user, comment=message, user_updated_by=user)
def set_inside_password(username, raw_password):
ldap_hashed_password = ldap_create(raw_password)
hashed_password = mysql_create(raw_password)
try:
user = InsideUser.objects.get(ldap_username=username)
except InsideUser.DoesNotExist:
logger.warning('Could not set password in Inside for user with username {}'.format(username))
return
user.password = hashed_password
user.ldap_password = ldap_hashed_password
user.save(update_fields=['password', 'ldap_password'])
log_inside_userupdate(username, "Satt passord på nytt via brukerinfo.neuf.no.")