From db0a0b395f7bdee0ad629e410ff1321ef4f8c806 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Mon, 5 May 2025 19:38:36 +0400 Subject: [PATCH] fix: oauth --- backend/open_webui/models/users.py | 8 ++++++++ backend/open_webui/utils/oauth.py | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/backend/open_webui/models/users.py b/backend/open_webui/models/users.py index 3b95d1609..3222aa27a 100644 --- a/backend/open_webui/models/users.py +++ b/backend/open_webui/models/users.py @@ -391,5 +391,13 @@ class UsersTable: users = db.query(User).filter(User.id.in_(user_ids)).all() return [user.id for user in users] + def get_super_admin_user(self) -> Optional[UserModel]: + with get_db() as db: + user = db.query(User).filter_by(role="admin").first() + if user: + return UserModel.model_validate(user) + else: + return None + Users = UsersTable() diff --git a/backend/open_webui/utils/oauth.py b/backend/open_webui/utils/oauth.py index 283bc3b5c..5d68b6ee1 100644 --- a/backend/open_webui/utils/oauth.py +++ b/backend/open_webui/utils/oauth.py @@ -169,7 +169,7 @@ class OAuthManager: all_group_names = {g.name for g in all_available_groups} groups_created = False # Determine creator ID: Prefer admin, fallback to current user if no admin exists - admin_user = Users.get_admin_user() + admin_user = Users.get_super_admin_user() creator_id = admin_user.id if admin_user else user.id log.debug(f"Using creator ID {creator_id} for potential group creation.")