Descubrimento OIDC mediante proxy e JWKS en .NET con HttpDocumentRetriever
Inxecta o HttpClient consciente do proxy no retriever que usa a procura de configuración de Microsoft.IdentityModel, mantendo intacta a política de actualización e validación.
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 procede de Microsoft.IdentityModel.Protocols; OpenIdConnectConfigurationRetriever procede do seu paquete OpenIdConnect. Mantén vivo o cliente HTTP durante toda a súa carga de traballo. Para enderezos públicos de discovery e JWKS onde se permiten intermediarios públicos, a lista de proxies HTTP ofrece candidatos para o URL de WebProxy.
A procura obtén primeiro o discovery e despois usa o mesmo retriever subministrado para jwks_uri, cando está presente. Eses URL poden ter servidores distintos e o proxy debe permitir ambos.
Para a autenticación do proxy, configura a conta de WebProxy antes de construílo. Non é un segredo de cliente do emisor.
Nun servizo de autenticación de longa duración, entrega este retriever ao mecanismo de caché e actualización admitido en lugar de descargar a configuración en cada solicitude entrante. Mantén a política de emisor, confianza HTTPS e validación de tokens independente desta elección de transporte.