Это известная проблема с B2C и MSAL.Причина в том, что B2C не возвращает значение в IdToken для предпочтительного имени пользователя из-за ограничений с социальными учетными записями.Например, AAD возвращает значение здесь, потому что оно знает, кто пользователь, но для b2c, потому что пользователь может войти в систему с локальной учетной записью, FB, Github, Amazon и т. Д. ... для них нет согласованного значенияиспользовать для предпочтительного имени пользователя.Кроме того, некоторые социальные аккаунты (например, Github) не требуют электронной почты.Итак ... чтобы разблокировать MSAL от развертывания совместимости кеша с ADAL, MSAL решила использовать «отсутствует в ответе токена» на своем конце при работе с учетными записями B2C, потому что это было бы нарушением схемы, так как оно было бы нулевым.В тех случаях, когда предпочтительное имя пользователя в IdToken равно нулю, MSAL добавляет константу «Отсутствует в ответе токена».
Однако вы можете использовать утверждение «имя» в качестве предпочтительного имени пользователя.Я верю, что вы можете добавить это в политику.Обычно это упоминается в этом B2C doc -> "В столбце Возвратная заявка выберите заявки, которые вы хотите вернуть, в токенах авторизации, отправленных обратно в ваше приложение после успешного редактирования профиля. Например, выберите Отображаемое имя,Почтовый индекс. »