Proxy-OIDC-oppdaging og JWKS i .NET med HttpDocumentRetriever
Set inn den proxyvitande HttpClient i retrieveren som Microsoft.IdentityModel sitt konfigurasjonsoppslag brukar, og hald retningslinjene for oppdatering og validering.
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 kjem frå Microsoft.IdentityModel.Protocols; OpenIdConnectConfigurationRetriever kjem frå OpenIdConnect-pakken til dette. Hald HTTP-klienten levande gjennom heile arbeidsbelastninga. For offentlege discovery- og JWKS-adresser der offentlege mellomledd er tillatne, gir HTTP-proxylista kandidatar for WebProxy-adressa.
Oppslaget hentar fyrst discovery og brukar deretter den same medfølgde retrieveren for jwks_uri når han finst. Desse adressene kan liggje på ulike vertar, og proxyen må tillate begge.
For proxyautentisering konfigurerer du WebProxy-kontoen før konstruksjon. Det er ikkje ein klientløyndom hos utgivaren.
I ein langvarig autentiseringsteneste gir du denne retrieveren til den støtta cache- og oppdateringsordninga i staden for å laste ned konfigurasjonen for kvar innkomande førespurnad. Hald retningslinjene for utgivar, HTTPS-tillit og tokenvalidering uavhengige av dette transportvalet.