diff --git a/backend/open_webui/config.py b/backend/open_webui/config.py index ea8de959b..00a5456ed 100644 --- a/backend/open_webui/config.py +++ b/backend/open_webui/config.py @@ -487,6 +487,7 @@ def load_oauth_providers(): "server_metadata_url": f"https://login.microsoftonline.com/{MICROSOFT_CLIENT_TENANT_ID.value}/v2.0/.well-known/openid-configuration", "scope": MICROSOFT_OAUTH_SCOPE.value, "redirect_uri": MICROSOFT_REDIRECT_URI.value, + "picture_url": "https://graph.microsoft.com/v1.0/me/photo/$value", } if ( diff --git a/backend/open_webui/utils/oauth.py b/backend/open_webui/utils/oauth.py index 70d130804..48fc1d740 100644 --- a/backend/open_webui/utils/oauth.py +++ b/backend/open_webui/utils/oauth.py @@ -255,7 +255,9 @@ class OAuthManager: raise HTTPException(400, detail=ERROR_MESSAGES.EMAIL_TAKEN) picture_claim = auth_manager_config.OAUTH_PICTURE_CLAIM - picture_url = user_data.get(picture_claim, "") + picture_url = user_data.get( + picture_claim, OAUTH_PROVIDERS[provider].get("picture_url", "") + ) if picture_url: # Download the profile image into a base64 string try: