ASP.NET Core JWT Bearer: a metaadat backchannel proxy beállítása
Használja a BackchannelHttpHandler elemet a lekérés előtt, kivéve ha egy teljes ügyfél vagy egyéni konfigurációkezelő már birtokolja ezt az átvitelt.
Egy API kaphat bearer tokent, majd meghiúsulhat a kiszolgáló metaadatainak és aláírókulcsának letöltésekor. Állítsa be ezt a JWT bearer sémát a meglévő regisztráció után és a kérések előtt:
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")
};
});Egyeztesse a regisztrált nevet; ha eltér az alapértelmezett Bearer-től, használja a tényleges nevét. Őrizze meg az Authority, Audience és a meglévő tokenparamétereket. Egy nyilvános metaadat- és aláírókulcs-végpont nyilvános proxyhozzáférés engedélyezése esetén használhat jelöltet a HTTP proxy listából ehhez a fiók nélküli WebProxy URL-hez.
A szokásos beállításban a post-configuration ebből a handlerből hozza létre a backchannelt. Ha egy teljes Backchannel vagy egyéni ConfigurationManager már biztosítja a lekérőt, akkor azt az objektumot állítsa be helyette. A handler tulajdonsága nem írja felül mindkettőt.
Bármely proxyfiókot használat előtt állítson be a WebProxyon, ne a Proxy módosításával a SendAsync belsejében. Őrizze meg az issuer, audience, aláírás, élettartam és további érvényesítők értékeit. Az OIDC bejelentkezés és a külön tokenbeszerzés megtartja saját HTTP útvonalait.