Нет выхода из учетной записи Django Двухфакторный аутентификатор

<

Я пытаюсь реализовать двухфакторный аутентификатор в моем Django приложении. Однако пользователь может обойти его, используя логин, предоставляемый django.contrib.auth. Есть ли способ перенаправить пользователя на /account/login, когда он ищет /login?

  • удаление django.contrib.auth (он нужен для выхода из системы)

избыточные логины

Просто поместите это в файл settings.py

LOGIN_URL = 'two_factor:login'

Хорошо, я нашел другое решение. Вот как я это сделал. В этом двухфакторном аутенте Django не хватает URL перенаправления. Поэтому вместо двухфакторного аута используйте 2fa. Это хорошо работает со сборкой в django.contrib.auth. После входа в систему с помощью встроенного логина, вы можете перенаправить пользователя на 2fa логин, что именно то, что я хотел.

  • смотрите документацию для более подробной информации :).

settings.py

LOGIN_URL = "/login"
MFA_URL = '/2fa/login'
MFA_REDIRECT_FIELD = 'next'
MFA_PROTECT_PATH_STARTSWITH = None

LOGIN_REDIRECT_URL = "/"
LOGOUT_REDIRECT_URL = "/"

SALT_KEY = "skfmrgfhtolstehsmgocbetshtpanrpshtnf" #this is just random 36 character

urls.py

urlpatterns = [
    ...extra paths,
    path('2fa/', include(django_2fa.urls)),
    path('',include("django.contrib.auth.urls")),
    
]
Вернуться на верх