Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
chenpangpang
open-webui
Commits
af4f8aa5
Commit
af4f8aa5
authored
Jun 05, 2024
by
Jun Siang Cheah
Browse files
feat: add WEBUI_SESSION_COOKIE_SAME_SITE for when open webui is embedded
parent
a1f4706a
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
15 additions
and
2 deletions
+15
-2
backend/config.py
backend/config.py
+5
-0
backend/main.py
backend/main.py
+10
-2
No files found.
backend/config.py
View file @
af4f8aa5
...
...
@@ -729,6 +729,11 @@ WEBUI_SECRET_KEY = os.environ.get(
),
# DEPRECATED: remove at next major version
)
WEBUI_SESSION_COOKIE_SAME_SITE
=
os
.
environ
.
get
(
"WEBUI_SESSION_COOKIE_SAME_SITE"
,
os
.
environ
.
get
(
"WEBUI_SESSION_COOKIE_SAME_SITE"
,
"lax"
),
)
if
WEBUI_AUTH
and
WEBUI_SECRET_KEY
==
""
:
raise
ValueError
(
ERROR_MESSAGES
.
ENV_VAR_NOT_FOUND
)
...
...
backend/main.py
View file @
af4f8aa5
...
...
@@ -73,6 +73,7 @@ from config import (
ENABLE_OAUTH_SIGNUP
,
OAUTH_MERGE_ACCOUNTS_BY_EMAIL
,
WEBUI_SECRET_KEY
,
WEBUI_SESSION_COOKIE_SAME_SITE
,
)
from
constants
import
ERROR_MESSAGES
,
WEBHOOK_MESSAGES
from
utils.webhook
import
post_webhook
...
...
@@ -507,7 +508,10 @@ for provider_name, provider_config in OAUTH_PROVIDERS.items():
# SessionMiddleware is used by authlib for oauth
if
len
(
OAUTH_PROVIDERS
)
>
0
:
app
.
add_middleware
(
SessionMiddleware
,
secret_key
=
WEBUI_SECRET_KEY
,
session_cookie
=
"oui-session"
SessionMiddleware
,
secret_key
=
WEBUI_SECRET_KEY
,
session_cookie
=
"oui-session"
,
same_site
=
WEBUI_SESSION_COOKIE_SAME_SITE
,
)
...
...
@@ -524,7 +528,11 @@ async def oauth_callback(provider: str, request: Request):
if
provider
not
in
OAUTH_PROVIDERS
:
raise
HTTPException
(
404
)
client
=
oauth
.
create_client
(
provider
)
try
:
token
=
await
client
.
authorize_access_token
(
request
)
except
Exception
as
e
:
log
.
error
(
f
"OAuth callback error:
{
e
}
"
)
raise
HTTPException
(
400
,
detail
=
ERROR_MESSAGES
.
INVALID_CRED
)
user_data
:
UserInfo
=
token
[
"userinfo"
]
sub
=
user_data
.
get
(
"sub"
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment