ASP.NET Core JWT Bearer: поставување на backchannel прокси за метаподатоци
Користете BackchannelHttpHandler пред да започне преземањето, освен ако целосен клиент или прилагоден менаџер за конфигурација веќе не го поседува тој транспорт.
API може да прими bearer токен и да не успее при преземањето на метаподатоците и клучот за потпис од серверот. Поставете ја таа JWT bearer шема по нејзината постоечка регистрација и пред барањата:
using System.Net;
using Microsoft.AspNetCore.Authentication.JwtBearer;
builder.Services.Configure<JwtBearerOptions>(
JwtBearerDefaults.AuthenticationScheme, options =>
{
options.BackchannelHttpHandler = new HttpClientHandler
{
UseProxy = true,
Proxy = new WebProxy("http://proxy.example:8080")
};
});Усогласете го регистрираното име; ако се разликува од стандардниот Bearer, користете го неговото вистинско име. Зачувајте Authority, Audience и постоечките параметри на токенот. Јавна крајна точка за метаподатоци и клуч за потпис може да користи кандидат од списокот со HTTP прокси за оваа WebProxy URL без сметка кога е дозволен пристап преку јавно прокси.
Во стандардното поставување, постконфигурацијата го создава backchannel од овој handler. Ако целосен Backchannel или прилагоден ConfigurationManager веќе го обезбедува преземачот, конфигурирајте го тој објект. Својството на handler не го заменува и двете.
Поставете која било прокси сметка на WebProxy пред употреба, а не со менување на Proxy во SendAsync. Зачувајте issuer, audience, потпис, важност и дополнителни валидатори. Најавата OIDC и одделното добивање токен ги задржуваат своите HTTP патеки.