2010-10-29 16 views
5

प्रस्तुत करने का प्रयास करते समय नेट सुरक्षा अपवाद मैंने 1.0.1.0 और 1.0.4.0 दोनों में recaptcha.dll डाउनलोड किया है।रीकैप्चा नियंत्रण

Security Exception Description: The application attempted to perform an operation not allowed by the security policy. To grant this application the required permission please contact your system administrator or change the application's trust level in the configuration file.

Exception Details: System.Security.SecurityException: Request for the permission of type 'System.Web.AspNetHostingPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.

Stack Trace:[SecurityException: Request for the permission of type 'System.Web.AspNetHostingPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.] System.Reflection.Assembly._GetType(String name, Boolean throwOnError, Boolean ignoreCase) +0 System.Web.UI.NamespaceTagNameToTypeMapper.GetControlType(String tagName, IDictionary attribs, Boolean throwOnError) +209

इस का हल, के रूप में एक त्वरित Googling द्वारा प्रदान की, recaptcha.dll विधानसभा के लिए पूर्ण विश्वास जोड़ने के लिए Caspol.exe उपयोग करने के लिए है: जब नियंत्रण रेंडर करने के लिए कोशिश कर रहा है, मैं निम्नलिखित अपवाद मिलता है।

C: \% पथ% \ Caspol -af C: \ inetpub \ wwwroot \% पथ% \ बिन \ recaptcha.dll

इस बिंदु पर, मैं निम्नलिखित त्रुटि मिलती है:

ERROR: This assembly is not strong name signed

स्रोत कोड डाउनलोड करने और इसे स्थानीय रूप से पुन: सम्मिलित करने का छोटा, क्या यह काम करने के लिए कोई अन्य तरीका है?

उत्तर

0

डाउनलोड करने के लिए उपलब्ध किए गए हस्ताक्षरित डीएलएल का उपयोग करके काम करने में असमर्थ होने के कारण, मुझे स्रोत पकड़ लिया गया, संकलित किया गया और इसे स्वयं हस्ताक्षरित किया गया और यह ठीक काम करता है।

यह बहुत अच्छा होता अगर कुछ, कहीं रास्ते में, संकेत दिया था मैं यह करने के हो सकता है ...

3

मैं एक ही समस्या में पड़ गए और अपने समाधान मुझे मदद की। मुझे reCAPTCHA ASP.NET स्रोत कोड पर निम्न चरणों को भी करना पड़ा।

1) DLL प्रोजेक्ट की AssemblyInfo.cs फ़ाइल खोलें और कथन का उपयोग करके निम्नलिखित जोड़ें।

सिस्टम.Security का उपयोग कर;

2) AssembleInfo.cs पर निम्न पंक्ति जोड़ें।

[विधानसभा: AllowPartiallyTrustedCallers()]

3) DLLs Recomiple और अपनी परियोजनाओं को पुनर्वितरित। यह त्रुटि हल होनी चाहिए।

नोट: जिस वेबसाइट पर मैं काम कर रहा हूं वह 1 होस्टिंग 1.com को उनकी होस्टिंग कंपनी के रूप में उपयोग कर रहा है। HttpWebRequest के दौरान टाइमआउट अपवाद से बचने के लिए मुझे प्रॉक्सी प्रॉपर्टी को कोड-बैक में भी सेट करना पड़ा।

recaptcha.Proxy = new WebProxy("http://ntproxyus.lxa.perfora.net:3128"); 

आशा इस कोई मदद करता है लेकिन अब मैं reCAPTCHA ऊपर और 1and1.com पर होस्ट एक ASP.NET साइट पर चल रहा है।

+0

साझा किए गए होस्टिंग पर हम पिछले उत्तर में उल्लिखित" caspol.exe "टूल का उपयोग नहीं कर सकते। मुझे AssemblyInfo.cs फ़ाइल को संशोधित करने की आवश्यकता नहीं थी। मैं बस रिकैप्चा के लिए प्रॉक्सी यूआरएल बदल दिया और यह 1and1.com साझा होस्टिंग पर काम किया। आपके समाधान ने मेरी मदद की। – Rahatur

2

मुझे यह वही समस्या थी। कुछ हेडबैंगिंग के बाद, मुझे एहसास हुआ कि मैंने एक ज़िप फ़ाइल से recaptcha.dll डाउनलोड किया था। इसलिए, मैंने डीएलएल पर राइट-क्लिक किया, गुणों पर गया और अनब्लॉक बटन पर क्लिक किया।

इससे मेरे लिए समस्या हल हो गई।

0

आईआईएस में आवेदन पूल करने के लिए जाना, आपकी परियोजना के लिए मिला है, सही क्लिक करें और चुनें उन्नत गुण और सही पर LoadUserProfile निर्धारित किया है।

1

मैं गूगल के reCAPTCHA पहले, मैं सब पर प्रदर्शित करने के लिए प्रपत्र नहीं मिल सका hostmysite.com

1) पर एक साझा होस्टिंग वातावरण में अपने उत्पादन सर्वर पर तैनात करने के लिए प्रयास करने के दौरान दो अलग-अलग सुरक्षा के मुद्दों का सामना किया।इसके बजाय, मुझे एक त्रुटि संदेश दिखाई देगा जो कहता है "वह असेंबली आंशिक रूप से विश्वसनीय कॉलर्स की अनुमति नहीं देती है।" यह एक डीएलएल डाउनलोड करके तय किया गया था कि किसी ने [असेंबली: AllowPartiallyTrustedCallers] के अतिरिक्त स्रोत कोड से पुन: संकलित किया है। DLL डाउनलोड और अधिक जानकारी के यहां हैं: https://code.google.com/p/recaptcha/issues/detail?id=100

2) कि DLL मैं शुरू में फार्म पर प्रदर्शित करने के लिए reCAPTCHA प्राप्त करने में सक्षम था की तैनाती है, लेकिन जमा करने के बाद प्रपत्र मूल पोस्ट में दिए गए उन्हीं सुरक्षा त्रुटि हुई :

"विवरण:।। आवेदन सुरक्षा नीति का अनुमति नहीं एक कार्रवाई करने के लिए इस आवेदन आवश्यक अनुमति प्रदान करने के लिए अपने सिस्टम व्यवस्थापक से संपर्क करें या विन्यास फाइल में आवेदन के विश्वास के स्तर को बदलने का प्रयास किया तो कृपया"

मैंने अपने होस्टिंग समर्थन के लिए टिकट जमा किया और वे उस समस्या को ठीक करने में सक्षम थे यह स्पष्टीकरण:

"यह शायद आपके कंप्यूटर पर काम कर रहा था क्योंकि आपने इसे पूर्ण ट्रस्ट वातावरण पर सेट किया है, जबकि साइट पर जिस वेब सर्वर पर है वह मध्यम ट्रस्ट पर सेट है। इसलिए इसका विश्वसनीय यूआरआई का एक सीमित सेट है। मैंने अब Google के रिकैप्चा के लिए भरोसेमंद सूची में यूआरआई जोड़ा है और आपका फॉर्म अब साइट पर काम कर रहा है। यदि आपके पास कोई और समस्या है, तो हमें बताएं। "