From 4b9f821b58007d4efa4aa16a4995b23126e08a88 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 21 Feb 2026 15:08:06 -0600 Subject: [PATCH] enh: OAUTH_GROUP_DEFAULT_SHARE --- backend/open_webui/config.py | 14 ++++++++++++++ backend/open_webui/utils/oauth.py | 4 +++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/backend/open_webui/config.py b/backend/open_webui/config.py index 9c458cba17..97bed90b51 100644 --- a/backend/open_webui/config.py +++ b/backend/open_webui/config.py @@ -573,6 +573,20 @@ ENABLE_OAUTH_GROUP_CREATION = PersistentConfig( ) +oauth_group_default_share = ( + os.environ.get("OAUTH_GROUP_DEFAULT_SHARE", "true").strip().lower() +) +OAUTH_GROUP_DEFAULT_SHARE = PersistentConfig( + "OAUTH_GROUP_DEFAULT_SHARE", + "oauth.group_default_share", + ( + "members" + if oauth_group_default_share == "members" + else oauth_group_default_share == "true" + ), +) + + OAUTH_BLOCKED_GROUPS = PersistentConfig( "OAUTH_BLOCKED_GROUPS", "oauth.blocked_groups", diff --git a/backend/open_webui/utils/oauth.py b/backend/open_webui/utils/oauth.py index 17dac27094..3b52e2d972 100644 --- a/backend/open_webui/utils/oauth.py +++ b/backend/open_webui/utils/oauth.py @@ -41,6 +41,7 @@ from open_webui.config import ( ENABLE_OAUTH_ROLE_MANAGEMENT, ENABLE_OAUTH_GROUP_MANAGEMENT, ENABLE_OAUTH_GROUP_CREATION, + OAUTH_GROUP_DEFAULT_SHARE, OAUTH_BLOCKED_GROUPS, OAUTH_GROUPS_SEPARATOR, OAUTH_ROLES_SEPARATOR, @@ -114,6 +115,7 @@ auth_manager_config.OAUTH_MERGE_ACCOUNTS_BY_EMAIL = OAUTH_MERGE_ACCOUNTS_BY_EMAI auth_manager_config.ENABLE_OAUTH_ROLE_MANAGEMENT = ENABLE_OAUTH_ROLE_MANAGEMENT auth_manager_config.ENABLE_OAUTH_GROUP_MANAGEMENT = ENABLE_OAUTH_GROUP_MANAGEMENT auth_manager_config.ENABLE_OAUTH_GROUP_CREATION = ENABLE_OAUTH_GROUP_CREATION +auth_manager_config.OAUTH_GROUP_DEFAULT_SHARE = OAUTH_GROUP_DEFAULT_SHARE auth_manager_config.OAUTH_BLOCKED_GROUPS = OAUTH_BLOCKED_GROUPS auth_manager_config.OAUTH_ROLES_CLAIM = OAUTH_ROLES_CLAIM auth_manager_config.OAUTH_SUB_CLAIM = OAUTH_SUB_CLAIM @@ -1246,7 +1248,7 @@ class OAuthManager: name=group_name, description=f"Group '{group_name}' created automatically via OAuth.", permissions=default_permissions, # Use default permissions from function args - user_ids=[], # Start with no users, user will be added later by subsequent logic + data={"config": {"share": auth_manager_config.OAUTH_GROUP_DEFAULT_SHARE}}, ) # Use determined creator ID (admin or fallback to current user) created_group = Groups.insert_new_group(