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
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')