خطأ في سلسلة الاتصال بعد التشفير باستخدام aspnet_regiis.exe [مغلق]
-
01-07-2019 - |
سؤال
لقد قمت بتشفير سلسلة الاتصال في ملف web.config الخاص بي باستخدام الخطوات الموجودة في الرابط أدناه:http://www.codeproject.com/KB/database/WebFarmConnStringsNet20.aspx
ومع ذلك، عندما أتصل بالتطبيق الخاص بي، فإنه سيعطي الخطأ التالي:
فشل في فك التشفير باستخدام موفر "CustomProvider".رسالة الخطأ من المزود:لا يمكن فتح حاوية مفتاح RSA.
الخادم الذي أقوم بإجراء التشفير فيه هو Windows Server 2003 R2 SP2 بنظام 64 بت.وبسبب ذلك أقوم بتعيين ACL لـ NT Authority\Network Service
.ومع ذلك فإنه لا يزال لا يعمل.
آمل أن يكون لدى شخص ما بعض الأفكار حول ما الذي أحتاج إلى التحقق منه لتشغيل هذا الأمر.
ملاحظة.إذا استخدمت مفتاح rsa الافتراضي NetFrameworkConfigurationKey
للتشفير، فلن تواجه سلسلة الاتصال مشكلة في الوصول.
المحلول
حسنًا، لقد وجدت مصدر المشكلة، وكان الأمر محرجًا.في السمة keyContainerName، كتبت الاسم بشكل غير صحيح.
تلك هي.وهذا هو سبب المشكلة.
من الواضح أن التشفير سيعمل حتى لو قدمت اسم حاوية مفاتيح غير صحيح، والذي افترضت بشكل غير صحيح أنه سيفشل.لذلك، بمجرد فك تشفير سلسلة الاتصال وإعادة التشفير باستخدام keyContainerName الصحيح، فإنه يعمل بشكل جيد.
راجع للشغل، تأكد من فك تشفير سلسلة الاتصال الموجودة لديك قبل تصحيح keyContainerName.سوف يشكو aspnet_regiis.exe من البيانات السيئة، لأن الموفر الآن مختلف.
نصائح أخرى
هل تذكرت إضافة
<configProtectedData>
إلى web.config الخاص بك؟