وصول المتصفح إلى صفحة تسجيل الدخول لدى موفّر الهوية لا يثبت أن خادم ASP.NET Core يستطيع جلب بيانات الموفر الوصفية أو تبادل رمز. تلك الطلبات من جهة الخادم تستخدم القناة الخلفية لـ OpenID Connect.

بالنسبة إلى مخطط موجود باسم oidc، اضبط المعالج الخاص به أثناء إعداد الخدمات، قبل بدء طلبات المصادقة:

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")
        };
});

استبدل oidc باسم المخطط المسجّل الفعلي. أبقِ إعدادات authority والعميل والتحقق من الرمز. وإذا كان الوكيل يتطلب حساباً، فأرفق بيانات الاعتماد المقصودة بـ WebProxy.

تحقّق مما إذا كان التطبيق يوفّر أصلاً options.Backchannel كـ HttpClient كامل. فإن كان كذلك، فاضبط مسار ذلك العميل مباشرةً: يستخدم ASP.NET Core BackchannelHttpHandler عند إنشاء قناته الخلفية الافتراضية، لا لاستبدال عميل مُوفَّر سلفاً.

استخدم طلب الاكتشاف أو طلب الرمز الفاشل من الخادم لتقييم هذا الإعداد. وبالنسبة إلى مسار HTTP عام، يقدّم قائمة وكلاء HTTP مرشحين لعنوان WebProxy. أما سياسة وكيل المتصفح وعملاء HTTP غير المرتبطين فلها مسارات إعداد خاصة بها.

مقالات ذات صلة