سؤال

لدي حاليًا تطبيق Web .NET على نظام قائم على الكتلة (Rackspace Cloud). في تكوين الويب ، قمت بإعداد مفتاح الجهاز التالي.

<machineKey validationKey='DE0...etc' 
decryptionKey='A97...etc' 
validation='SHA1'/>

كنا نحصل على عدد قليل من الأخطاء التالية على أساس يومي:

فشل التحقق من صحة MAC. إذا تم استضافة هذا التطبيق بواسطة مزرعة ويب أو كتلة ، فتأكد من أن التكوين يحدد نفس خوارزمية التحقق من الصحة والتحقق من الصحة. لا يمكن استخدام Autogenerate في مجموعة.

فعلت قليلا من googling وأضفت ما يلي. وقد أوقف هذا كل الأخطاء السابقة. ومع ذلك قد يفتح الباب لمختلف هجمات القرصنة.

<pages enableViewStateMac="false">

ومع ذلك أجد الآن أنني أحصل على الأخطاء التالية

معلومات الحالة غير صالحة لهذه الصفحة وقد تفسد.

أحاول تحديد ما قد يسبب هذين النوعين من الأخطاء. هل هم روبوتات؟ هل هم مستخدمون ويب حقيقيون؟ هل هم محاولات الاختراق/البرامج الضارة؟ هل هذا أمر طبيعي ويجب أن أتجاهلهم ...

هل يستطيع أحد تسليط ضوء على هذا؟

هل كانت مفيدة؟

المحلول

لا أعتقد أنها محاولات برامج ضارة/قرصنة - لقد رأيت أحيانًا هؤلاء بنفسي عند التصفح.

السبب العام الذي رأيته هو أن الصفحة لم تكتمل التحميل قبل بدء المستخدم بعد ذلك - يوجد حقل مخفي يتم تقديمه في أسفل النموذج ، وإذا لم يتم تقديم ذلك إلى المتصفح متى ينقر المستخدم على زر ، وسوف يرفض الخادم ViewState.

هناك منشور متعمق حول هذه القضية ، وبعض عمليات العمل هنا:

التحقق من صحة ViewState Mac فشل خطأ

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top