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 komt uit Microsoft.IdentityModel.Protocols; OpenIdConnectConfigurationRetriever komt uit het OpenIdConnect-pakket daarvan. Houd de HTTP-client in leven gedurende zijn werkbelasting. Voor openbare discovery- en JWKS-URL's waar openbare tussenpartijen zijn toegestaan, biedt de HTTP-proxylijst kandidaten voor de WebProxy-URL.

De opzoeking haalt eerst discovery op en gebruikt daarna dezelfde aangeleverde retriever voor jwks_uri, wanneer aanwezig. Die URL's kunnen op verschillende hosts staan, en de proxy moet beide toestaan.

Voor proxy-authenticatie configureert u het account van WebProxy vóór de constructie. Het is geen clientgeheim van de uitgever.

Geef in een langdurige authenticatiedienst deze retriever aan de ondersteunde cache- en vernieuwingsregeling in plaats van de configuratie voor elk inkomend verzoek te downloaden. Houd het beleid voor uitgever, HTTPS-vertrouwen en tokenvalidatie onafhankelijk van deze transportkeuze.

Gerelateerde artikelen