diff --git a/apps/jumpserver/conf.py b/apps/jumpserver/conf.py index 70876623e..8707690c2 100644 --- a/apps/jumpserver/conf.py +++ b/apps/jumpserver/conf.py @@ -193,6 +193,7 @@ class Config(dict): 'FORCE_SCRIPT_NAME': '', 'LOGIN_CONFIRM_ENABLE': False, 'WINDOWS_SKIP_ALL_MANUAL_PASSWORD': False, + 'ORG_CHANGE_TO_URL': '' } def convert_type(self, k, v): diff --git a/apps/jumpserver/settings/custom.py b/apps/jumpserver/settings/custom.py index 0a910f984..cdffa0b61 100644 --- a/apps/jumpserver/settings/custom.py +++ b/apps/jumpserver/settings/custom.py @@ -82,3 +82,4 @@ USER_GUIDE_URL = DYNAMIC.USER_GUIDE_URL HTTP_LISTEN_PORT = CONFIG.HTTP_LISTEN_PORT WS_LISTEN_PORT = CONFIG.WS_LISTEN_PORT LOGIN_LOG_KEEP_DAYS = DYNAMIC.LOGIN_LOG_KEEP_DAYS +ORG_CHANGE_TO_URL = CONFIG.ORG_CHANGE_TO_URL diff --git a/apps/orgs/views.py b/apps/orgs/views.py index d599fbab3..0cbcd00e0 100644 --- a/apps/orgs/views.py +++ b/apps/orgs/views.py @@ -1,4 +1,5 @@ from django.shortcuts import redirect, reverse +from django.conf import settings from django.http import HttpResponseForbidden from django.views.generic import DetailView, View @@ -16,6 +17,9 @@ class SwitchOrgView(DetailView): self.object = Organization.get_instance(pk) oid = str(self.object.id) request.session['oid'] = oid + org_change_to_url = settings.ORG_CHANGE_TO_URL + if org_change_to_url: + return redirect(org_change_to_url) host = request.get_host() referer = request.META.get('HTTP_REFERER', '') if referer.find(host) == -1: