Dat een browser de inlogpagina van de identiteitsprovider bereikt, bewijst niet dat de ASP.NET Core-server de metadata van de provider kan ophalen of een token kan uitwisselen. Die server-side aanvragen gebruiken het OpenID Connect-backchannel.

Configureer voor een bestaand schema met de naam oidc de handler tijdens het instellen van de services, voordat authenticatieaanvragen beginnen:

services.Configure<Microsoft.AspNetCore.Authentication.OpenIdConnect
    .OpenIdConnectOptions>("oidc", options =>
{
    options.BackchannelHttpHandler =
        new System.Net.Http.HttpClientHandler
        {
            UseProxy = true,
            Proxy = new System.Net.WebProxy(
                "http://proxy.example.net:8080")
        };
});

Vervang oidc door de werkelijke naam van het geregistreerde schema. Behoud de instellingen voor authority, client en tokenvalidatie. Als de proxy een account vereist, koppel dan de bedoelde inloggegevens aan WebProxy.

Controleer of de app al options.Backchannel levert als een volledige HttpClient. Is dat zo, configureer dan de route van die client rechtstreeks: ASP.NET Core gebruikt BackchannelHttpHandler bij het maken van het standaard-backchannel, niet om een al geleverde client te vervangen.

Gebruik de mislukte discovery- of tokenaanvraag van de server om deze instelling te beoordelen. Voor een openbare HTTP-route biedt de HTTP-proxylijst kandidaten voor het WebProxy-adres. Browserproxybeleid en niet-verwante HTTP-clients hebben hun eigen configuratiepaden.

Gerelateerde artikelen