MSAL.NET var iegūt savu HTTP transportu no IMsalHttpClientFactory. Ietiniet klientu, kas konfigurēts starpniekserverim:

sealed class TokenHttpFactory : IMsalHttpClientFactory
{
    private readonly HttpClient client;

    public TokenHttpFactory(HttpClient client)
    {
        this.client = client;
    }

    public HttpClient GetHttpClient() => client;
}

Izveidojiet apstrādātāju un klientu vienreiz visam lietotnes darbības laikam, pēc tam pievienojiet rūpnīcu esošās MSAL veidotāja konfigurācijas laikā:

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

builder.WithHttpClientFactory(new TokenHttpFactory(tokenHttp));

Veidotājs ir lietotnes esošais MSAL lietotnes veidotājs; saglabājiet tā pilnvaras, klienta reģistrāciju un akreditācijas datu konfigurāciju. Atļautam publiski pieejamam HTTPS pilnvaru maršrutam bez starpniekservera konta HTTP adrese no HTTP starpniekserveru saraksta var aizpildīt piemēra WebProxy. Konfigurējiet starpniekservera akreditācijas datus WebProxy, kad nepieciešams.

Rūpnīcai jābūt drošai pret pavedieniem. Izmantojiet klientu atkārtoti, nevis veidojiet jaunu katrā GetHttpClient izsaukumā. MSAL neatbrīvo nodrošināto klientu; tā īpašnieks pārvalda šo darbības laiku.

Tas kontrolē MSAL HTTP pieprasījumus. Interaktīva pieteikšanās var atvērt pārlūku, kura tīkls ir atsevišķs. Tāpēc veiksmīga pieteikšanās pārlūkā nepierāda, ka marķiera HTTP klientam ir tas pats maršruts.

Saistītie raksti