11

के साथ वेबसाइट असेंबली सुरक्षित करना मैं वर्तमान में एक प्रोजेक्ट पर हूं जहां हम MVC site बना रहे हैं। कस्टम कार्यक्षमता प्रदान करने के लिए, तृतीय पक्ष डीएल की प्लग इन करने की आवश्यकता के कारण साइट को कोड एक्सेस सुरक्षा का उपयोग करने की आवश्यकता है। अब हम नहीं चाहते हैं कि इन असेंबली को पूरा भरोसा हो, और इसलिए नए सुरक्षा मॉडल का उपयोग .NET 4.0नए कोड सुरक्षा मॉडल

इन आवश्यकताओं के कारण, हम अपने सभी विधानसभाओं का नामकरण कर रहे हैं, और उन्हें जीएसी में स्थापित कर रहे हैं। इनमें से कुछ असेंबली सुरक्षा सुरक्षाकर्ता सुरक्षा सुरक्षा और सुरक्षा क्रिटिकल प्रकारों और सदस्यों के साथ मिश्रित हैं।

सुरक्षा ट्रांस्पेरेंट और सुरक्षा क्रिटिकल असेंबली, प्रकार और सदस्यों का उपयोग तीसरे पक्ष के असेंबली डेवलपर्स द्वारा किया जा सकता है जैसा कि हम चाहते हैं।

अब मुझे Global.asax फ़ाइल के साथ यह समस्या है, जो AllowPartiallyTrustedCallers विशेषता के साथ चिह्नित असेंबली में रहने वाली कक्षा से प्राप्त होती है।

इस वर्ग को बदले में HttpApplication से विरासत मिली है।

मेरे web.config में ट्रस्टलवेल वर्तमान में उच्च पर सेट है।

मैं निम्न त्रुटि हो रही है:

Inheritance security rules violated by type: 'ASP.global_asax'. Derived types must either match the security accessibility of the base type or be less accessible

मुझे लगता है कि क्योंकि विरासत नियमों की है जब सुरक्षा मॉडल का उपयोग कर, और HttpApplication वर्ग SecurityTransparent की तुलना में एक सख्त नियम होना चाहिए कि।

मैंने अपनी कस्टम कक्षा को SecuritySafeCritical विशेषता के साथ चिह्नित करने का प्रयास किया, लेकिन बिना किसी किस्मत के।

मुझे आशा है कि आप में से कुछ को इस समस्या का समाधान होगा।

उत्तर

1

यदि आप HttpApplication उप-प्रकार तक पहुंच सुरक्षित करने की कोशिश कर रहे हैं, तो मैं इसे एक कस्टम इंटरफ़ेस में सारणित कर दूंगा जो आपको पता है कि सुरक्षित है और तृतीय पक्ष डेवलपर्स को मौजूदा .NET पर बूटस्ट्रैप सुरक्षा की कोशिश करने के बजाय उस तक पहुंचने की इजाजत है। प्रकार के।

संबंधित मुद्दे