ASP.NET Core JWT Bearer: nastavitev backchannel proxyja za metapodatke
Uporabite BackchannelHttpHandler pred začetkom pridobivanja, razen če popoln odjemalec ali upravitelj konfiguracije po meri že ima ta prenos.
API lahko prejme bearer žeton in spodleti pri prenosu metapodatkov in podpisnega ključa strežnika. Nastavite to shemo JWT bearer po obstoječi registraciji in pred zahtevami:
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")
};
});Ujemite registrirano ime; če se razlikuje od privzetega Bearer, uporabite njegovo dejansko ime. Ohranite Authority, Audience in obstoječe parametre žetona. Javna končna točka metapodatkov in podpisnega ključa lahko za ta naslov WebProxy brez računa uporabi kandidata s seznama HTTP proxyjev, ko je dovoljen dostop prek javnih proxyjev.
V standardni nastavitvi naknadna konfiguracija ustvari backchannel iz tega handlerja. Če popoln Backchannel ali prilagojen ConfigurationManager že zagotavlja pridobivalnik, nastavite namesto tega ta objekt. Lastnost handlerja ne preglasi obeh.
Nastavite kateri koli proxy račun v WebProxy pred uporabo, ne s spreminjanjem Proxy znotraj SendAsync. Ohranite issuer, audience, podpis, veljavnost in dodatne validacije. Prijava OIDC in ločeno pridobivanje žetona ohranjata svoje lastne poti HTTP.