Corrigir a rota do proxy no servidor num login OIDC do ASP.NET Core
Defina BackchannelHttpHandler no esquema OpenID Connect registrado para descoberta e requisições de token, a menos que o app forneça um cliente Backchannel completo.
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.