MSAL.NETን በሚደገም የፕሮክሲ ደንበኛ ያስታጥቁ
IMsalHttpClientFactoryን በጋራ ፕሮክሲ-ተኮር HttpClient ዙሪያ ተግባራዊ ያድርጉ እና ከMSAL መተግበሪያ ገንቢ ጋር ያገናኙት።
MSAL.NET የHTTP ማጓጓዣውን ከIMsalHttpClientFactory ማግኘት ይችላል። ለፕሮክሲው የተዘጋጀ ደንበኛ ይጠቀልሉ፦
sealed class TokenHttpFactory : IMsalHttpClientFactory
{
private readonly HttpClient client;
public TokenHttpFactory(HttpClient client)
{
this.client = client;
}
public HttpClient GetHttpClient() => client;
}ሃንድለርንና ደንበኛውን ለመተግበሪያው ዕድሜ አንድ ጊዜ ይፍጠሩ፣ ከዚያም ፋብሪካውን በነባሩ የMSAL ገንቢ ውቅር ወቅት ያያዙት፦
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));ገንቢው የመተግበሪያው ነባር የMSAL መተግበሪያ ገንቢ ነው፤ ስልጣኑን፣ የደንበኛ ምዝገባውንና የምስክር ወረቀት ውቅሩን ይያዙ። የፕሮክሲ መለያ ለሌለው የተፈቀደና በአደባባይ የሚደረስበት HTTPS ስልጣን መንገድ፣ ከየHTTP ፕሮክሲ ዝርዝር የተገኘ የHTTP አድራሻ የምሳሌውን WebProxy ሊሞላ ይችላል። በሚያስፈልግበት ጊዜ የፕሮክሲ ምስክር ወረቀቶችን በWebProxy ላይ ያዋቅሩ።
ፋብሪካው ክር-ደህንነት ያለው መሆን አለበት። በእያንዳንዱ የGetHttpClient ጥሪ ውስጥ አዲስ ከመፍጠር ይልቅ ደንበኛውን እንደገና ይጠቀሙ። MSAL የቀረበውን ደንበኛ አያስወግድም፤ ባለቤቱ ያንን ዕድሜ ያስተዳድራል።
ይህ የMSAL የHTTP ጥያቄዎችን ይቆጣጠራል። በይነተገናኝ መግቢያ አውታረ መረቡ የተለየ የሆነ አሳሽ ሊከፍት ይችላል። ስለዚህ የሚሠራ የአሳሽ መግቢያ የቶከን HTTP ደንበኛው ተመሳሳይ መንገድ እንዳለው አያረጋግጥም።