O navegador chegar à página de login do provedor de identidade não prova que o servidor ASP.NET Core consegue buscar os metadados do provedor ou trocar um token. Essas requisições do lado do servidor usam o backchannel do OpenID Connect.

Para um esquema existente chamado oidc, configure o manipulador durante a configuração dos serviços, antes de começarem as requisições de autenticação:

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")
        };
});

Substitua oidc pelo nome real do esquema registrado. Mantenha as configurações de authority, client e validação de token. Se o proxy exigir uma conta, anexe as credenciais pretendidas ao WebProxy.

Verifique se o app já fornece options.Backchannel como um HttpClient completo. Se sim, configure a rota desse cliente diretamente: o ASP.NET Core usa BackchannelHttpHandler ao criar seu backchannel padrão, não para substituir um cliente já fornecido.

Use a descoberta ou a requisição de token que falhou no servidor para avaliar esta configuração. Para uma rota HTTP pública, a lista de proxies HTTP oferece candidatos para o endereço do WebProxy. A política de proxy do navegador e clientes HTTP não relacionados têm seus próprios caminhos de configuração.

Artigos relacionados