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 без налога када је дозвољен приступ преко јавних проксија.

У стандардном подешавању post-configuration прави backchannel из овог handler-а. Ако потпун Backchannel или прилагођени ConfigurationManager већ обезбеђује преузимач, конфигуришите тај објекат. Својство handler-а не надјачава оба.

Сваки прокси налог поставите на WebProxy пре употребе, а не мењањем Proxy унутар SendAsync. Задржите issuer, audience, потпис, трајање и додатне валидаторе. OIDC пријава и одвојено прибављање токена задржавају сопствене HTTP путање.

Повезани чланци