Serveripoolse puhverserveri marsruudi parandamine ASP.NET Core OIDC-sisselogimisel
Määrake BackchannelHttpHandler registreeritud OpenID Connecti skeemile avastus- ja loobripäringute jaoks, kui rakendus ei paku täielikku Backchanneli klienti.
See, et brauser jõuab identiteedipakkuja sisselogimislehele, ei tõesta, et ASP.NET Core'i server suudab pakkuja metaandmed hankida või loobri vahetada. Need serveripoolsed päringud kasutavad OpenID Connecti tagakanalit.
Olemasoleva skeemi puhul nimega oidc seadistage selle haldur teenuste seadistamise ajal, enne autentimispäringute algust:
services.Configure<Microsoft.AspNetCore.Authentication.OpenIdConnect
.OpenIdConnectOptions>("oidc", options =>
{
options.BackchannelHttpHandler =
new System.Net.Http.HttpClientHandler
{
UseProxy = true,
Proxy = new System.Net.WebProxy(
"http://proxy.example.net:8080")
};
});Asendage oidc tegeliku registreeritud skeemi nimega. Säilitage authority, kliendi ja loobri valideerimise seaded. Kui puhverserver nõuab kontot, lisage kavandatud volitused objektile WebProxy.
Kontrollige, kas rakendus juba pakub options.Backchannel kui täielikku HttpClient. Kui jah, seadistage selle kliendi marsruut otse: ASP.NET Core kasutab BackchannelHttpHandler oma vaikimisi tagakanali loomisel, mitte juba pakutud kliendi asendamiseks.
Selle seade hindamiseks kasutage serveri ebaõnnestunud avastus- või loobripäringut. Avaliku HTTP-marsruudi jaoks pakub HTTP-puhverserverite loend kandidaate WebProxy aadressi jaoks. Brauseri puhverserveri poliitikal ja mitteseotud HTTP-klientidel on oma seadistusteekonnad.