var handler = new HttpClientHandler
{
    Proxy = new WebProxy("http://proxy.example:8080"),
    UseProxy = true
};
var http = new HttpClient(handler);
var documents = new HttpDocumentRetriever(http);

var configuration = await OpenIdConnectConfigurationRetriever.GetAsync(
    "https://issuer.example/.well-known/openid-configuration",
    documents,
    cancellationToken);

HttpDocumentRetriever долази из Microsoft.IdentityModel.Protocols; OpenIdConnectConfigurationRetriever долази из његовог OpenIdConnect пакета. Држите HTTP клијент живим током његовог рада. За јавне discovery и JWKS URL-ове где су јавни посредници дозвољени, листа HTTP проксија нуди кандидате за WebProxy URL.

Претрага прво преузима discovery, а затим користи исти достављени retriever за jwks_uri када постоји. Ти URL-ови могу бити на различитим хостовима, а прокси мора дозволити оба.

За аутентификацију на проксију конфигуришите налог WebProxy пре конструкције. То није клијентска тајна издаваоца.

У дуготрајној услузи аутентификације дајте овај retriever подржаном распореду кеширања и освежавања уместо преузимања конфигурације за сваки долазни захтев. Држите политику издаваоца, HTTPS поверења и валидације токена независном од овог избора транспорта.

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