Une API peut recevoir un jeton bearer et échouer lors du téléchargement des métadonnées et de la clé de signature du serveur. Configurez ce schéma JWT bearer après son enregistrement existant et avant les requêtes :

using System.Net;
using Microsoft.AspNetCore.Authentication.JwtBearer;

builder.Services.Configure<JwtBearerOptions>(
    JwtBearerDefaults.AuthenticationScheme, options =>
    {
        options.BackchannelHttpHandler = new HttpClientHandler
        {
            UseProxy = true,
            Proxy = new WebProxy("http://proxy.example:8080")
        };
    });

Faites correspondre le nom enregistré ; s'il diffère du Bearer par défaut, utilisez son nom réel. Conservez Authority, Audience et les paramètres de jeton existants. Un point de terminaison public de métadonnées et de clé de signature peut utiliser un candidat de la liste de proxies HTTP pour cette URL WebProxy sans compte lorsque l'accès par proxy public est autorisé.

Dans la configuration standard, la post-configuration crée le backchannel à partir de ce gestionnaire. Si un Backchannel complet ou un ConfigurationManager personnalisé fournit déjà le récupérateur, configurez cet objet à la place. La propriété du gestionnaire ne remplace pas les deux.

Définissez tout compte proxy sur WebProxy avant utilisation, et non en modifiant Proxy dans SendAsync. Conservez issuer, audience, signature, durée de vie et validateurs supplémentaires. La connexion OIDC et l'obtention séparée de jetons conservent leurs propres chemins HTTP.

Articles similaires