mirror of https://github.com/jumpserver/jumpserver
fix: 登录时验证码卡住
parent
2af6ac504d
commit
7d123ff8c5
|
@ -2,6 +2,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
from django.urls import path, include
|
from django.urls import path, include
|
||||||
|
from django.db.transaction import non_atomic_requests
|
||||||
|
|
||||||
from .. import views
|
from .. import views
|
||||||
from users import views as users_view
|
from users import views as users_view
|
||||||
|
@ -10,7 +11,7 @@ app_name = 'authentication'
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
# login
|
# login
|
||||||
path('login/', views.UserLoginView.as_view(), name='login'),
|
path('login/', non_atomic_requests(views.UserLoginView.as_view()), name='login'),
|
||||||
path('login/otp/', views.UserLoginOtpView.as_view(), name='login-otp'),
|
path('login/otp/', views.UserLoginOtpView.as_view(), name='login-otp'),
|
||||||
path('login/wait-confirm/', views.UserLoginWaitConfirmView.as_view(), name='login-wait-confirm'),
|
path('login/wait-confirm/', views.UserLoginWaitConfirmView.as_view(), name='login-wait-confirm'),
|
||||||
path('login/guard/', views.UserLoginGuardView.as_view(), name='login-guard'),
|
path('login/guard/', views.UserLoginGuardView.as_view(), name='login-guard'),
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
import os
|
import os
|
||||||
import datetime
|
import datetime
|
||||||
|
|
||||||
from django.contrib.auth import login as auth_login, logout as auth_logout
|
from django.contrib.auth import login as auth_login, logout as auth_logout
|
||||||
from django.http import HttpResponse
|
from django.http import HttpResponse
|
||||||
from django.shortcuts import reverse, redirect
|
from django.shortcuts import reverse, redirect
|
||||||
|
@ -17,6 +18,7 @@ from django.views.generic.edit import FormView
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.urls import reverse_lazy
|
from django.urls import reverse_lazy
|
||||||
from django.contrib.auth import BACKEND_SESSION_KEY
|
from django.contrib.auth import BACKEND_SESSION_KEY
|
||||||
|
from django.db.transaction import atomic
|
||||||
|
|
||||||
from common.utils import get_request_ip, FlashMessageUtil
|
from common.utils import get_request_ip, FlashMessageUtil
|
||||||
from users.utils import (
|
from users.utils import (
|
||||||
|
@ -107,7 +109,8 @@ class UserLoginView(mixins.AuthMixin, FormView):
|
||||||
self.request.session.delete_test_cookie()
|
self.request.session.delete_test_cookie()
|
||||||
|
|
||||||
try:
|
try:
|
||||||
self.check_user_auth(decrypt_passwd=True)
|
with atomic():
|
||||||
|
self.check_user_auth(decrypt_passwd=True)
|
||||||
except errors.AuthFailedError as e:
|
except errors.AuthFailedError as e:
|
||||||
form.add_error(None, e.msg)
|
form.add_error(None, e.msg)
|
||||||
self.set_login_failed_mark()
|
self.set_login_failed_mark()
|
||||||
|
|
Loading…
Reference in New Issue