Timothy Jaeryang Baek 4 месяцев назад
Родитель
Сommit
062264c7f6
2 измененных файлов с 14 добавлено и 9 удалено
  1. 10 5
      backend/open_webui/config.py
  2. 4 4
      backend/open_webui/utils/oauth.py

+ 10 - 5
backend/open_webui/config.py

@@ -606,7 +606,7 @@ def load_oauth_providers():
     if GOOGLE_CLIENT_ID.value and GOOGLE_CLIENT_SECRET.value:
 
         def google_oauth_register(oauth: OAuth):
-            return oauth.register(
+            client = oauth.register(
                 name="google",
                 client_id=GOOGLE_CLIENT_ID.value,
                 client_secret=GOOGLE_CLIENT_SECRET.value,
@@ -621,6 +621,7 @@ def load_oauth_providers():
                 },
                 redirect_uri=GOOGLE_REDIRECT_URI.value,
             )
+            return client
 
         OAUTH_PROVIDERS["google"] = {
             "redirect_uri": GOOGLE_REDIRECT_URI.value,
@@ -634,7 +635,7 @@ def load_oauth_providers():
     ):
 
         def microsoft_oauth_register(oauth: OAuth):
-            return oauth.register(
+            client = oauth.register(
                 name="microsoft",
                 client_id=MICROSOFT_CLIENT_ID.value,
                 client_secret=MICROSOFT_CLIENT_SECRET.value,
@@ -649,6 +650,7 @@ def load_oauth_providers():
                 },
                 redirect_uri=MICROSOFT_REDIRECT_URI.value,
             )
+            return client
 
         OAUTH_PROVIDERS["microsoft"] = {
             "redirect_uri": MICROSOFT_REDIRECT_URI.value,
@@ -659,7 +661,7 @@ def load_oauth_providers():
     if GITHUB_CLIENT_ID.value and GITHUB_CLIENT_SECRET.value:
 
         def github_oauth_register(oauth: OAuth):
-            return oauth.register(
+            client = oauth.register(
                 name="github",
                 client_id=GITHUB_CLIENT_ID.value,
                 client_secret=GITHUB_CLIENT_SECRET.value,
@@ -677,6 +679,7 @@ def load_oauth_providers():
                 },
                 redirect_uri=GITHUB_CLIENT_REDIRECT_URI.value,
             )
+            return client
 
         OAUTH_PROVIDERS["github"] = {
             "redirect_uri": GITHUB_CLIENT_REDIRECT_URI.value,
@@ -716,7 +719,7 @@ def load_oauth_providers():
                     % ("S256", OAUTH_CODE_CHALLENGE_METHOD.value)
                 )
 
-            return oauth.register(
+            client = oauth.register(
                 name="oidc",
                 client_id=OAUTH_CLIENT_ID.value,
                 client_secret=OAUTH_CLIENT_SECRET.value,
@@ -724,6 +727,7 @@ def load_oauth_providers():
                 client_kwargs=client_kwargs,
                 redirect_uri=OPENID_REDIRECT_URI.value,
             )
+            return client
 
         OAUTH_PROVIDERS["oidc"] = {
             "name": OAUTH_PROVIDER_NAME.value,
@@ -734,7 +738,7 @@ def load_oauth_providers():
     if FEISHU_CLIENT_ID.value and FEISHU_CLIENT_SECRET.value:
 
         def feishu_oauth_register(oauth: OAuth):
-            return oauth.register(
+            client = oauth.register(
                 name="feishu",
                 client_id=FEISHU_CLIENT_ID.value,
                 client_secret=FEISHU_CLIENT_SECRET.value,
@@ -752,6 +756,7 @@ def load_oauth_providers():
                 },
                 redirect_uri=FEISHU_REDIRECT_URI.value,
             )
+            return client
 
         OAUTH_PROVIDERS["feishu"] = {
             "register": feishu_oauth_register,

+ 4 - 4
backend/open_webui/utils/oauth.py

@@ -367,8 +367,8 @@ class OAuthClientManager:
         if client_id in self.clients:
             client = self.clients[client_id]
             return (
-                client.server_metadata_url
-                if hasattr(client, "server_metadata_url")
+                client._server_metadata_url
+                if hasattr(client, "_server_metadata_url")
                 else None
             )
         return None
@@ -633,8 +633,8 @@ class OAuthManager:
         if provider_name in self._clients:
             client = self._clients[provider_name]
             return (
-                client.server_metadata_url
-                if hasattr(client, "server_metadata_url")
+                client._server_metadata_url
+                if hasattr(client, "_server_metadata_url")
                 else None
             )
         return None