diff --git a/apps/authentication/views/login.py b/apps/authentication/views/login.py index 0aa9f90b5..195496e9b 100644 --- a/apps/authentication/views/login.py +++ b/apps/authentication/views/login.py @@ -56,14 +56,19 @@ class UserLoginView(mixins.AuthMixin, FormView): if not auth_url: return None - message_data = { - 'title': _('Redirecting'), - 'message': _("Redirecting to {} authentication").format(auth_type), - 'redirect_url': auth_url, - 'has_cancel': True, - 'cancel_url': reverse('authentication:login') + '?admin=1' - } - redirect_url = FlashMessageUtil.gen_message_url(message_data) + if settings.LOGIN_REDIRECT_FLASH_MESSAGE_INTERVAL == 0: + redirect_url = auth_url + else: + message_data = { + 'title': _('Redirecting'), + 'message': _("Redirecting to {} authentication").format(auth_type), + 'redirect_url': auth_url, + 'interval': settings.LOGIN_REDIRECT_FLASH_MESSAGE_INTERVAL, + 'has_cancel': True, + 'cancel_url': reverse('authentication:login') + '?admin=1' + } + redirect_url = FlashMessageUtil.gen_message_url(message_data) + query_string = request.GET.urlencode() redirect_url = "{}&{}".format(redirect_url, query_string) return redirect_url diff --git a/apps/jumpserver/conf.py b/apps/jumpserver/conf.py index 449ae7974..72ad7f3c5 100644 --- a/apps/jumpserver/conf.py +++ b/apps/jumpserver/conf.py @@ -306,6 +306,7 @@ class Config(dict): 'SESSION_EXPIRE_AT_BROWSER_CLOSE_FORCE': False, 'FORGOT_PASSWORD_URL': '', 'HEALTH_CHECK_TOKEN': '', + 'LOGIN_REDIRECT_FLASH_MESSAGE_INTERVAL': 3, 'TERMINAL_RDP_ADDR': '' } diff --git a/apps/jumpserver/settings/custom.py b/apps/jumpserver/settings/custom.py index c60c53788..d8f763b0d 100644 --- a/apps/jumpserver/settings/custom.py +++ b/apps/jumpserver/settings/custom.py @@ -128,3 +128,5 @@ HEALTH_CHECK_TOKEN = CONFIG.HEALTH_CHECK_TOKEN TERMINAL_RDP_ADDR = CONFIG.TERMINAL_RDP_ADDR SECURITY_LUNA_REMEMBER_AUTH = CONFIG.SECURITY_LUNA_REMEMBER_AUTH + +LOGIN_REDIRECT_FLASH_MESSAGE_INTERVAL = CONFIG.LOGIN_REDIRECT_FLASH_MESSAGE_INTERVAL