DefaultCredentials لا يحوّل تسجيل الدخول إلى Windows إلى كلمة مرور Basic
طابِق سياق الأمان الافتراضي في .NET مع مخطط مصادقة الوكيل بدلًا من توقّع ظهور حساب Basic المحفوظ في المتصفح تلقائيًا.
يتذكّر المتصفح حساب وكيل. يستخدم عميل .NET لديك CredentialCache.DefaultCredentials ويتلقى 407 دون إعادة المحاولة التي توقّعتها. هاتان الحقيقتان متوافقتان.
يمثّل DefaultCredentials سياق الأمان الحالي للمصادقة المتكاملة المدعومة. توثّق Microsoft صلاحيته مع NTLM وNegotiate وKerberos. وهو ليس طلبًا لاستخراج اسم مستخدم وكلمة مرور نصية من عمليات تسجيل الدخول المحفوظة في المتصفح.
إذا كان الوكيل يقدّم Basic ويطلب حسابًا منفصلًا، فاضبط ذلك الحساب عبر واجهة بيانات اعتماد الوكيل التي يدعمها العميل. إنّ NetworkCredential الصريح وسياق أمان Windows الحالي مدخلان مختلفان.
تحقّق من التحدّي المعلن قبل تغيير كلمة المرور. تحقّق أيضًا من سياق المستخدم الذي يشغّل التطبيق. قد يكون لملف تنفيذي لسطح المكتب وخدمة هويتان مختلفتان حتى عند تشغيلهما على الحاسب نفسه.
لا سبب لنسخ الحساب إلى خاصية بيانات الاعتماد في الوجهة أيضًا. أبقِ تسجيل دخول الوسيط مع الوسيط. التشخيص المفيد يسمّي ثلاثة أشياء: الوكيل المختار، والمخطط الذي يطلبه، ونوع بيانات الاعتماد التي قدّمها التطبيق فعلًا.