Perbaiki rute proxy sisi server pada login OIDC ASP.NET Core
Setel BackchannelHttpHandler pada skema OpenID Connect terdaftar untuk permintaan penemuan dan token, kecuali aplikasi menyediakan klien Backchannel lengkap.
Browser yang mencapai halaman login penyedia identitas tidak membuktikan bahwa server ASP.NET Core dapat mengambil metadata penyedia atau menukar token. Permintaan sisi server tersebut memakai kanal balik OpenID Connect.
Untuk skema yang sudah ada bernama oidc, konfigurasikan handler-nya saat penyiapan layanan, sebelum permintaan autentikasi dimulai:
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")
};
});Ganti oidc dengan nama skema terdaftar yang sebenarnya. Pertahankan pengaturan authority, klien, dan validasi token. Jika proxy memerlukan akun, lampirkan kredensial yang dimaksud ke WebProxy.
Periksa apakah aplikasi sudah menyediakan options.Backchannel sebagai HttpClient lengkap. Jika ya, konfigurasikan rute klien tersebut secara langsung: ASP.NET Core memakai BackchannelHttpHandler saat membuat kanal balik bawaannya, bukan untuk mengganti klien yang sudah disediakan.
Gunakan permintaan penemuan atau token yang gagal dari server untuk menilai setelan ini. Untuk rute HTTP publik, daftar proxy HTTP menawarkan kandidat untuk alamat WebProxy. Kebijakan proxy browser dan klien HTTP yang tidak terkait punya jalur konfigurasi sendiri.