ASP.NET Core OIDC pieteikšanās servera starpniekservera maršruta labošana
Iestatiet BackchannelHttpHandler reģistrētajā OpenID Connect shēmā, lai darbotos atklāšana un tokenu pieprasījumi, ja vien lietotne nenodrošina pilnu Backchannel klientu.
Tas, ka pārlūkprogramma sasniedz identitātes nodrošinātāja pieteikšanās lapu, nepierāda, ka ASP.NET Core serveris var iegūt nodrošinātāja metadatus vai apmainīt tokenu. Šie servera pieprasījumi izmanto OpenID Connect backchannel.
Esošai shēmai ar nosaukumu oidc konfigurējiet tās apdarinātāju pakalpojumu iestatīšanas laikā, pirms sākas autentifikācijas pieprasījumi:
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")
};
});Aizstājiet oidc ar faktisko reģistrētās shēmas nosaukumu. Saglabājiet authority, client un tokena validācijas iestatījumus. Ja starpniekserverim nepieciešams konts, pievienojiet paredzētos akreditācijas datus WebProxy.
Pārbaudiet, vai lietotne jau nodrošina options.Backchannel kā pilnu HttpClient. Ja tā, konfigurējiet šī klienta maršrutu tieši: ASP.NET Core izmanto BackchannelHttpHandler, veidojot savu noklusējuma backchannel, nevis aizstājot jau nodrošinātu klientu.
Novērtējiet šo iestatījumu pēc servera neizdevušās atklāšanas vai tokena pieprasījuma. Publiskam HTTP maršrutam HTTP starpniekserveru saraksts nodrošina WebProxy adreses kandidātus. Pārlūkprogrammas starpniekservera politikai un nesaistītiem HTTP klientiem ir savi konfigurācijas ceļi.