Я создаю веб-сайт AspNet Core 2.1 с использованием аутентификации Azure AD B2C, основываясь на примере кода, который я нашел здесь .
Я могу аутентифицироваться на провайдере идентификации Google.Но вместо того, чтобы показывать пользовательскую страницу на основе атрибутов, выбранных для политики регистрации / входа на портале Azure AD B2C, все, что я получаю, - это обычная страница аутентификации Google, спрашивающая, с какой учетной записью Google я хочу проходить аутентификацию.1006 * Мне удалось отобразить пользовательскую страницу со списком всех атрибутов, которые я определил в более ранней версии моего проекта, в которой использовался устаревший домен microsoftonline.com.Но теперь, когда я использую рекомендованный домен b2clogin.com, страница больше не отображается.Я не знаю, связано ли это изменение с отсутствующей страницей, но я решил упомянуть об этом.
Мой файл appsettings.json:
{
"AzureADB2C": {
"ApiScopes": "https://ridemonitor.onmicrosoft.com/api/user.read",
"ApiUrl": "https://ridemonitor.azurewebsites.net/hello",
"CallbackPath": "/signin-oidc",
"ClientId": "**redacted**",
"Domain": "ridemonitor.onmicrosoft.com",
"EditProfilePolicyId": "b2c_1_ProfileEditing",
"Instance": "https://ridemonitor.b2clogin.com/tfp",
"RedirectUri": "https://localhost:44305/signin-oidc",
"ResetPasswordPolicyId": "b2c_1_PWReset",
"SignUpSignInPolicyId": "b2c_1_SignUpIn"
},
"Logging": {
"LogLevel": {
"Default": "Warning"
}
},
"AllowedHosts": "*"
}
Обновление
Я настроил двух провайдеров идентификации для своего приложения, Google и учетной записи Microsoft.Фактически поставщик учетной записи Microsoft отображает настроенную страницу со списком всех атрибутов, которые я установил на портале Azure AD B2C, когда я аутентифицирую его.Это просто маршрут Google, который перестал отображать страницу пользовательских атрибутов.
URI перенаправления в Google Cloud Platform -> Учетные данные:
https://ridemonitor.b2clogin.com/ridemonitor.onmicrosoft.com/oauth2/authresp
- это URL-адрес, на который мне следует отправлять и который раньше отправлял провайдер идентификации Google, а также URL-адрес, на который мне отправляет провайдер идентификации Microsoft Account, когда я пытаюсь войти.
Похоже, мне нужно обновить что-то в моей конфигурации Google, но я не уверен, что.
Update # 2
Использование консоли разработчика Chrome и LinkRedirect Trace, я пытался увидеть, как я попал на страницы, на которых я оказался, после того, как нажал на ссылки входа и регистрации в учетной записи Google и Microsoft.
Кнопка Google выводит меня на общую страницу входа в Google.Первоначальное перенаправление (есть несколько последующих) выглядит следующим образом:
https://accounts.google.com/signin/oauth?client_id=769952297467-qhqd9brt7pl4sra1hnjhnnqchce2h6f1.apps.googleusercontent.com&as=c-8m6tr-h2tUDpRHqIApkQ&destination=https://ridemonitor.b2clogin.com&approval_state=!ChR4aFltdld5TGNwWUEyUlA1R0R6TRIfczBDdExlN01TRElYa013TWpqbVNUV1h5alREUVloWQ%E2%88%99ANKMe1QAAAAAW7K6uQbexonsHodkbBOebSymUYB1yufO&oauthgdpr=1&xsrfsig=AHgIfE8msp705-PG2II5uHWqjoODqYSLPg
Первоначальное перенаправление для кнопки учетной записи Microsoft:
https://login.live.com/oauth20_authorize.srf?client_id=704398a8-908a-4512-9cc0-4453014b4714&redirect_uri=https%3a%2f%2fridemonitor.b2clogin.com%2fridemonitor.onmicrosoft.com%2foauth2%2fauthresp&response_type=code&scope=openid+profile+email&response_mode=form_post&nonce=TQsICDEyv245x1E4pkQynQ%3d%3d&state=StateProperties%3deyJTSUQiOiJ4LW1zLWNwaW0tcmM6ZjBlYmQ4OTUtNmVjYS00NzBhLWE4ZDYtY2U4NTgyYzFmZmNjIiwiVElEIjoiNzIwZDg5NDEtNmM2Zi00YzIzLWI5MWEtZDMyZjJjODA5Yjk4In0
Сравнивая два начальных перенаправления, интересно то, что для Google не содержит параметр для redirect_uri ,Я предполагаю, что это место, куда браузер должен быть отправлен после успешной аутентификации.
Тем не менее, моя страница учетных данных Google, похоже, настроена правильно:
Или я не настраиваю вещи в правой части экосистемы Google?Я думал, что следую некоторым указаниям Microsoft относительно учетных данных Google, но ...