Compare commits

...

1 Commits

Author SHA1 Message Date
Paul Marillonnet 5672b6fe8d middlewares: stop maintaining in-session reference to service (#61508)
#61199 allows us to use direct request attribute in order to
    maintain such a reference
2022-02-07 17:57:52 +01:00
2 changed files with 5 additions and 4 deletions

View File

@ -28,6 +28,7 @@ from django.utils.timezone import now, utc
from django.urls import reverse_lazy
from authentic2.constants import AUTHENTICATION_EVENTS_SESSION_KEY
from authentic2.utils.service import get_service, set_service
logger = logging.getLogger(__name__)
@ -619,7 +620,7 @@ class AppConfig(django.apps.AppConfig):
from authentic2.middleware import StoreRequestMiddleware
request = StoreRequestMiddleware.get_request()
if request:
request.session['service_slug'] = service.slug
set_service(request, service)
def cut_event_sso_success(self, idp, service, user, **kwargs):
msg = u'connexion à %s' % service.name
@ -719,7 +720,9 @@ class AppConfig(django.apps.AppConfig):
user.attributes.validated = True
user.attributes.validation_context = 'FC'
user.attributes.validation_date = now().date()
partner = request.session.get('service_slug')
partner = get_service(request)
if partner:
partner = partner.slug
if hasattr(request, 'partner'):
partner = (request.partner and request.partner.get('ou_slug')) or partner
if partner:

View File

@ -40,7 +40,6 @@ class CUTMiddleware(MiddlewareMixin):
if hasattr(request, 'session'):
if not domain:
domain = request.session.get('cut_domain')
request.service_slug = request.session.get('service_slug', None)
if not domain:
domain = getattr(request, 'domain', None)
@ -103,6 +102,5 @@ class CUTMiddleware(MiddlewareMixin):
def process_response(self, request, response):
if hasattr(request, 'session'):
request.session['service_slug'] = getattr(request, 'service_slug', None)
self.process_request(request)
return response