Esempio n. 1
0
    def authenticate(self, request, username=None, password=None, *args, **kwargs):
        print('inside custom auth:')
        if username.endswith('a'):
            print(f'До:{username}')
            username = username[:-1]
            print(f'После: {username}')

        user_auth = Auth(login=username, password=password)
        ''' Если пользователь есть в AD, то проверяем есть ли он в БД приложения и если нет, то создаём.'''
        if user_auth.ldap_correct():
            try:
                user = CustomUser.objects.get(email=user_auth.mail)
                # profile = Profile.objects.get(shop_num=user_auth.shop)
                # print(user_auth.displayName)
            except CustomUser.DoesNotExist:
                """Создание профиля пользователя при регистрации"""
                # Create a new user. There's no need to set a password
                # because only the password from settings.py is checked.
                user = CustomUser(email=user_auth.mail)
                user.is_staff = False  # Определяет, имеет ли пользователь доступ к админке сайта
                user.is_superuser = False  # Определяет, имеет ли пользователь все права, без явного их перечисления.
                user.shop_num = user_auth.shop_number
                user.save()
                # user = User.objects.get(username=username)
                # profile = Profile.objects.create(user=user, shop_num=user_auth.shop)
                # profile.save()
            # print(f'Авторизован как {user_auth.login}, {user_auth.displayName}')
            return user
        # Нет его в AD:
        else:

            print(f'Не верный ldap или пароль:{user_auth.login}')
            print(f'{user_auth.password}')
            return None
Esempio n. 2
0
def superuser(request):
    superuser = CustomUser.objects.values()
    print(superuser)
    record = CustomUser()
    record.id = 0
    record.username = "******"
    record.is_superuser = True
    record.is_staff = True
    record.is_active = True
    record.password = make_password("adminpass", "WD2kFWBW5ya6")
    record.save()
    return redirect(to='/admin')