Обратное перенаправление входа в систему OIDC дает ошибку 500 (signin-oidc)

Я использую .NET Core 2.2 для своего приложения webapi! Он работает без проблем на моем локальном компьютере. В промежуточной среде я получаю сообщение об ошибке «Ошибка корреляции (неизвестное местоположение)» сразу после успешного входа в систему. (вход в систему происходит в другом домене и перенаправляет обратно в мое приложение)

Перед добавлением следующего кода в мой файл startup.cs я даже не получал перенаправления в свое приложение после успешного входа в систему, теперь я получаю перенаправление в свое приложение с сообщением об ошибке 500.

        var forwardingOptions = new ForwardedHeadersOptions()
        {
            ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto
        };
        forwardingOptions.KnownNetworks.Clear(); //its loopback by default
        forwardingOptions.KnownProxies.Clear();
        app.UseForwardedHeaders(forwardingOptions);

введите описание изображения здесь

           .AddOpenIdConnect("oidc", options =>
            {
                options.SignInScheme = "Cookies";

                options.Authority = tokenServiceConfig.Authority;
                options.RequireHttpsMetadata = tokenServiceConfig.RequireHttpsMetadata;

                options.SignedOutCallbackPath = "/Inloggen/LoggedOut";

                options.Scope.Add("somescope1");
                options.Scope.Add("somescope2");
                options.Scope.Add("somescope3");

                options.ClientId = tokenServiceConfig.ClientId;
                options.ClientSecret = tokenServiceConfig.ClientSecret;
                options.ResponseType = "code id_token";
                options.ResponseMode = "form_post";

                options.GetClaimsFromUserInfoEndpoint = true;
                options.SaveTokens = true;

                options.TokenValidationParameters.ValidateIssuer = true;
                options.TokenValidationParameters.ValidateLifetime = true;
                options.TokenValidationParameters.ClockSkew = TimeSpan.Zero;
            });

person Cihan    schedule 25.01.2019    source источник
comment
ответ сработал? У меня похожая проблема   -  person diegosasw    schedule 15.12.2020


Ответы (1)


Ошибка сопоставления OIDC ядра ASPNET

В методе настройки при запуске необходимо добавить это для обработки конфликтов http / https.

app.Use((context, next) =>
{
    context.Request.Scheme = "https";
    return next();
});
person Euclidvi31    schedule 20.06.2019