B2C - BackChannelHandler

Реализовано решение с использованием Asp.Net Framework 4.5 для аутентификации в Azure B2C. Веб-сервер использует прокси для доступа в Интернет. У меня возникла проблема с настройкой перенаправления аутентификации B2C за прокси-сервером. Чтобы решить эту проблему, я добавил нижеприведенную строку кода (backchannelHandler) для вызова за прокси-сервером. Когда я нажимаю кнопку входа в веб-приложении, он пытается перенаправить пользователя в B2C, но перед отображением страницы входа в Azure B2C он перенаправляется обратно на страницу веб-приложения. Не могли бы вы предоставить ценное предложение.

IdentityModelEventSource.ShowPII = true; app.UseOpenIdConnectAuthentication (new OpenIdConnectAuthenticationOptions {// Генерация адреса метаданных с использованием информации об арендаторе и политике

              MetadataAddress = String.Format(AadInstance, Tenant, DefaultPolicy),

                // These are standard OpenID Connect parameters, with values pulled from web.config
                ClientId = ClientId,
              RedirectUri = RedirectUri,
              PostLogoutRedirectUri = RedirectUri,

                // Specify the callbacks for each type of notifications
                Notifications = new OpenIdConnectAuthenticationNotifications
              {
                 RedirectToIdentityProvider = OnRedirectToIdentityProvider,
                  AuthorizationCodeReceived = OnAuthorizationCodeReceived,
                  AuthenticationFailed = OnAuthenticationFailed,
              },

                // Specify the claim type that specifies the Name property.
                TokenValidationParameters = new TokenValidationParameters
              {
                  NameClaimType = "name"
              },

                // Specify the scope by appending all of the scopes requested into one string (separated by a blank space)
                Scope = $"openid profile offline_access {ReadTasksScope} {WriteTasksScope}",
                BackchannelHttpHandler = new HttpClientHandler
                {
                    UseProxy = true,
                    Proxy = new WebProxy
                    {
                        Address = new Uri(ConfigurationUtility.ConfiguredHttpRequestProxy),
                        BypassProxyOnLocal = false
                    }
                },
0
задан bbsaai 26 June 2019 в 23:30
поделиться

0 ответов