إحدى خطوات تفعيل نماذج المصادقة Forms Based Authentication على شيربوينت 2010 هي تحديد قيمة العنصر machinekey في الملف web.config للتطبيق الخاص بك, وتغيير أو إضافة قيم العنصر machinekey في الملف web.config للخدمة Security Token Service تحت المسار التالي:

C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\WebServices\SecurityToken

بعد عمل كل شيء بشكل صحيح, تكتشف في اليوم التالي وعند محاولة الدخول بأي مستخدم جديد, بأن عملية الدخول لا تنجح, ولا يظهر أي خطأ فقط قد يظهر الخطأ التالي في سجلات ويندوز:

An exception occurred when trying to issue security token: The security token username and password could not be validated.

طبعاً هذا الخطأ يوضح بأن معلومات الدخول مثل اسم المستخدم أو كلمة المرور خطأ أو الاثنين هما خطأ, لكن غالباً نكون متأكدين من معلومات الدخول, إذا ما السبب؟

بعد بحث طويل تبين بأن قيمة العنصر machinekey للخدمة Security Token Service تحت المسار التالي:

C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\WebServices\SecurityToken

أعد القيمة المتغيرة إلى القيمة القديمة التي تم تعيينها في بداية ضبط إعدادات نماذج المصادقة, عندها سيعود كل شيء للعمل بشكل صحيح, ويمكنك الآن تسجيل دخول على الموقع بشكل ناجح مرة أخرى, لكن تبين أن عملية دخول تعود لتفشل مرة أخرى في اليوم التالي! بسبب تغير قيمة العنصر machinekey في الملف web.config السابق!, إذا ما لذي يغير هذه القيمة.

تبين بعد بعض تنفيذ عمليات البحث بأن هناك مهمة يتم تنفيذها كل يوم ضمن مهام شيربوينت 2010 المجدولة تغير هذه القيمة, ولإيقاف عملية تغيير هذه القيمة يجب اتباع الخطوات التالية:

1. افتح موقع الإدارة المركزية Central Administration.
2. اضغط على الرابط Monitoring في القائمة اليسرى.
3. من المجموعة Health Analyzer اختر الرابط Review rule definitions.
4. تحت التصنيف Configuration ابحث عن القاعدة التالية:
Web.config files are not identical on all machines in the farm.
5. اضغط على Edit Item وألغي تحديد الخيار Repair Automatically واضغط حفظ.

الحل المقترح برأيي ليس هو الحل الأفضل لأن مايكروسوفت توصي بعدم إيقاف أو تغيير أي من قواعد العمل المعرفة كما فعلنا سابقاً, لذلك سنفرد مقالة أخرى لطرح الحل الأفضل فيما يخص هذه المشكلة.

استمتع :)