يظهر مربع الحوار "مطلوب مصادقة الوكيل" على نظام التشغيل iOS عندما يتعذر على التطبيق أو النظام المصادقة مع خادم وكيل. يمكن أن يحدث هذا حتى بعد تمرير اسم المستخدم وكلمة المرور عبر NEProxyServer. فيما يلي بعض النقاط الرئيسية:
- لا يعمل دائمًا تعيين بيانات اعتماد الوكيل برمجيًا في خصائص NEProxyServer (اسم المستخدم وكلمة المرور). لا يزال مربع الحوار يظهر ويطلب من المستخدم إدخال بيانات الاعتماد يدويًا[1][2].
- تمكين المصادقة الأساسية على الخادم الوكيل (على سبيل المثال، باستخدام mitmproxy باستخدام --proxyauth) يعمل مع HTTP ولكن ليس دائمًا مع HTTPS على iOS. يبدو أن هذا خطأ على مستوى البروتوكول في mitmproxy الذي تم تقديمه في الإصدار 8.1.0[4].
- في نظام التشغيل macOS، يمكن أن تحدث المشكلة عندما تحاول عمليات النظام الوصول إلى موارد الإنترنت قبل أن تتاح الفرصة لجهاز Mac لسحب تذكرة Kerberos من الوكيل. إن السماح لهذه العمليات باستخدام وكيل غير مصادق عليه يمكن أن يساعد في حل المطالبات[5].
- تصحيح أخطاء كود التطبيق والتحقق من أي عمليات إعادة توجيه غير مقصودة في ملفات تكوين الخادم هي خطوات أخرى لاستكشاف الأخطاء وإصلاحها قد تساعد[3].
باختصار، يعد مربع الحوار "مطلوب مصادقة الوكيل" على نظام التشغيل iOS مشكلة معروفة عند استخدام الوكلاء. لا يعمل دائمًا تعيين بيانات الاعتماد برمجيًا، وقد تكون هناك أخطاء على مستوى البروتوكول في بعض الخوادم الوكيلة. يوصى بالتشاور مع فريق الوكيل لإدراج وجهات معينة في القائمة البيضاء.
اقتباسات:[1] https://forums.developer.apple.com/thread/112201
[2] https://stackoverflow.com/questions/53852899/ios-keep-showing-proxy-authentication-required-dialog-even-after-passing-usern
[3] https://kinsta.com/knowledgebase/http-error-407/
[4] https://github.com/mitmproxy/mitmproxy/issues/6420
[5] https://community.jamf.com/t5/jamf-pro/the-ever-present-quot-proxy-authentication-required-quot-prompt/m-p/172881