Аутентификация с использованием Microsoft.AspNetCore.Authentication.MicrosoftAccount не возвращает электронную почту для личной учетной записи

Я использую пакет Microsoft.AspNetCore.Authentication.MicrosoftAccount для добавления аутентификации для учетных записей MS в мое веб-приложение. Когда я вхожу в систему, используя свои рабочие данные AzureAD, все работает нормально, возвращая имя и претензии по электронной почте, как и ожидалось. Тем не менее, если я использую тот же код для входа в систему с использованием моей личной учетной записи @outlook.com, он все равно будет входить в систему в порядке, но не будет возвращать претензию по электронной почте (только имя и т. Д.)

Другие посты, которые я могу найти, просто не включают правильную сферу, но я не верю, что это проблема. Я использую следующий код для инициализации аутентификации (примечание: область действия User.Read уже добавлена ​​в область действия по умолчанию):

services.AddAuthentication(...)
                .AddMicrosoftAccount(microsoftOptions =>
                {
                    microsoftOptions.ClientId = Configuration["Authentication:Microsoft:ClientId"];
                    microsoftOptions.ClientSecret = Configuration["Authentication:Microsoft:ClientSecret"];
                    microsoftOptions.Scope.Add("https://graph.microsoft.com/User.ReadBasic.All");
                    microsoftOptions.Scope.Add("openid");
                    microsoftOptions.Scope.Add("email");
                    microsoftOptions.Scope.Add("profile");
                });

Что еще я должен смотреть, или это просто, как это работает с личными учетными записями?

0 ответов

Другие вопросы по тегам