diff --git a/authentik/root/messages/storage.py b/authentik/root/messages/storage.py index 4e23ca729..e9204527e 100644 --- a/authentik/root/messages/storage.py +++ b/authentik/root/messages/storage.py @@ -1,13 +1,12 @@ """Channels Messages storage""" from asgiref.sync import async_to_sync from channels.layers import get_channel_layer -from django.contrib.messages.storage.base import Message -from django.contrib.messages.storage.fallback import FallbackStorage +from django.contrib.messages.storage.base import BaseStorage, Message from django.core.cache import cache from django.http.request import HttpRequest -class ChannelsStorage(FallbackStorage): +class ChannelsStorage(BaseStorage): """Send contrib.messages over websocket""" def __init__(self, request: HttpRequest) -> None: @@ -15,6 +14,9 @@ class ChannelsStorage(FallbackStorage): super().__init__(request) self.channel = get_channel_layer() + def _get(self): + return [], True + def _store(self, messages: list[Message], response, *args, **kwargs): prefix = f"user_{self.request.session.session_key}_messages_" keys = cache.keys(f"{prefix}*")