Archived
- Adds new app inside with models and moves related logic. - Working InsideAuthBackend with group sync - use passlib (<3) for MySQL hashes - Renames main app to neuf_userinfo - introduced local_settings.py
40 lines
1.1 KiB
Python
40 lines
1.1 KiB
Python
# -*- coding: utf-8 -*-
|
|
from __future__ import unicode_literals
|
|
from django.db import connections
|
|
import logging
|
|
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):
|
|
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.save()
|
|
|
|
log_inside_userupdate(username, "Satt passord på nytt via brukerinfo.neuf.no.")
|