diff --git a/apps/api/src/api/terminal.py b/apps/api/src/api/terminal.py index 2edace2..86bf740 100644 --- a/apps/api/src/api/terminal.py +++ b/apps/api/src/api/terminal.py @@ -114,17 +114,16 @@ async def _get_user_from_websocket( Returns: The user's UUID if authenticated, None otherwise. """ - from src.auth.session import verify_session_token + from src.auth.session import decode_session_cookie + from src.config import Settings session_cookie = websocket.cookies.get("session") if not session_cookie: return None - user_id = verify_session_token(session_cookie) - if not user_id: - return None - + settings = Settings() try: - return uuid.UUID(user_id) - except ValueError: + payload = decode_session_cookie(settings=settings, cookie_value=session_cookie) + return uuid.UUID(str(payload["user_id"])) + except (ValueError, KeyError): return None