|
@@ -18,6 +18,8 @@ from open_webui.constants import ERROR_MESSAGES, WEBHOOK_MESSAGES
|
|
from open_webui.env import (
|
|
from open_webui.env import (
|
|
WEBUI_AUTH_TRUSTED_EMAIL_HEADER,
|
|
WEBUI_AUTH_TRUSTED_EMAIL_HEADER,
|
|
WEBUI_AUTH_TRUSTED_NAME_HEADER,
|
|
WEBUI_AUTH_TRUSTED_NAME_HEADER,
|
|
|
|
+ WEBUI_SESSION_COOKIE_SAME_SITE,
|
|
|
|
+ WEBUI_SESSION_COOKIE_SECURE,
|
|
)
|
|
)
|
|
from fastapi import APIRouter, Depends, HTTPException, Request, status
|
|
from fastapi import APIRouter, Depends, HTTPException, Request, status
|
|
from fastapi.responses import Response
|
|
from fastapi.responses import Response
|
|
@@ -53,6 +55,8 @@ async def get_session_user(
|
|
key="token",
|
|
key="token",
|
|
value=token,
|
|
value=token,
|
|
httponly=True, # Ensures the cookie is not accessible via JavaScript
|
|
httponly=True, # Ensures the cookie is not accessible via JavaScript
|
|
|
|
+ samesite=WEBUI_SESSION_COOKIE_SAME_SITE,
|
|
|
|
+ secure=WEBUI_SESSION_COOKIE_SECURE,
|
|
)
|
|
)
|
|
|
|
|
|
return {
|
|
return {
|
|
@@ -166,6 +170,8 @@ async def signin(request: Request, response: Response, form_data: SigninForm):
|
|
key="token",
|
|
key="token",
|
|
value=token,
|
|
value=token,
|
|
httponly=True, # Ensures the cookie is not accessible via JavaScript
|
|
httponly=True, # Ensures the cookie is not accessible via JavaScript
|
|
|
|
+ samesite=WEBUI_SESSION_COOKIE_SAME_SITE,
|
|
|
|
+ secure=WEBUI_SESSION_COOKIE_SECURE,
|
|
)
|
|
)
|
|
|
|
|
|
return {
|
|
return {
|
|
@@ -236,6 +242,8 @@ async def signup(request: Request, response: Response, form_data: SignupForm):
|
|
key="token",
|
|
key="token",
|
|
value=token,
|
|
value=token,
|
|
httponly=True, # Ensures the cookie is not accessible via JavaScript
|
|
httponly=True, # Ensures the cookie is not accessible via JavaScript
|
|
|
|
+ samesite=WEBUI_SESSION_COOKIE_SAME_SITE,
|
|
|
|
+ secure=WEBUI_SESSION_COOKIE_SECURE,
|
|
)
|
|
)
|
|
|
|
|
|
if request.app.state.config.WEBHOOK_URL:
|
|
if request.app.state.config.WEBHOOK_URL:
|