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 және қолданыстағы токен параметрлерін сақтаңыз. Ашық метадеректер мен қолтаңба кілтінің соңғы нүктесі ашық прокси арқылы қатысуға рұқсат етілгенде, осы тіркелгісіз WebProxy URL үшін HTTP прокси тізімінен үміткерді пайдалана алады.
Стандартты орнатуда post-configuration backchannel-ді осы handler-ден жасайды. Егер толық Backchannel немесе теңшелетін ConfigurationManager алушыны әлдеқашан қамтамасыз етсе, оның орнына сол нысанды конфигурациялаңыз. handler қасиеті екеуін де ауыстырмайды.
Кез келген прокси тіркелгісін пайдалану алдында WebProxy-де орнатыңыз, SendAsync ішіндегі Proxy-ді өзгерту арқылы емес. issuer, audience, қолтаңба, әрекет ету мерзімі және қосымша валидаторларды сақтаңыз. OIDC кіруі және токенді бөлек алу өз HTTP жолдарын сақтайды.