मैंने सिल्वरलाइट कोड को छिपाने पर कुछ पोस्ट पढ़ी हैं। मुख्य निष्कर्ष यह था कि आप इसे खराब कर सकते हैं, लेकिन आप वास्तव में इसे छुपा नहीं सकते हैं, इसलिए सर्वर पर सुरक्षित चीजें पूरी की जानी चाहिए। लेकिन फिर, कोई भी फिडलर के माध्यम से देख सकता है कि किस प्रकार का डेटा किसी विशेष webservice पर पोस्ट किया जाता है। उदाहरण के लिए, वे देख सकते हैं कि मैं UpdateCustomer.asmx को कॉल कर रहा हूं। और यदि वे करते हैं, तो मैं उन्हें एएसएमएक्स को कॉल करने से रोकने के लिए क्या कर सकता हूं? क्या इस विधि को कॉल करने के लिए केवल 'मेरे Silverlight ऐप' को अनुमति देने का कोई तरीका है?मेरे सर्वर विधियों को सुरक्षित करने के लिए कैसे करें
उत्तर
मैं अगर तुम सच में पागल होना चाहते थे, तो आप एक वेब सेवा समाप्ति बिंदु के माध्यम से अपने क्लाइंट अनुप्रयोग से सभी कॉल्स मार्शल और पेलोड एन्क्रिप्ट सकता है ... कुछ की तरह लगता है:
- ग्राहक आवेदन givemeatoken endpoint हिट " .asmx onlyservice.asmx "
- सर्वर कुछ कुंजी टोकन
- क्लाइंट टोकन कहा का उपयोग कर सभी कॉल्स एन्क्रिप्ट करता है, एक समाप्ति बिंदु को उन्हें गुजर उत्पन्न करता है" "
- सर्वर टोकन का उपयोग कॉल की पेलोड decrypts, और मार्गों कॉल करने के लिए 'असली' वेब सेवाएं।
- सर्वर कॉल के परिणाम पुनर्प्राप्त करता है, टोकन का उपयोग करके पुनः एन्क्रिप्ट करता है, और क्लाइंट
- क्लाइंट डिक्रिप्ट परिणाम देता है और उसे क्या करने की आवश्यकता होती है।
लेकिन यह सिर्फ पागल बात है .... और तरह का व्यर्थ है, क्योंकि आप सिल्वरलाइट कोड को इंजीनियर करने के लिए खुद को "वास्तविक" सेवाओं के बारे में पता लगाने के लिए उलटा कर सकते हैं। यदि आप वास्तव में अपने ऐप को सुरक्षित करना चाहते हैं, तो प्रमाणीकरण का उपयोग करें; क्लाइंट साइड और सर्वर दोनों तरफ (यानी, सेवाओं को कॉल करने के लिए किसी प्रकार की प्रमाणीकरण टिकट की आवश्यकता होती है)
नहीं। आपके द्वारा उपयोग किए जाने वाले प्रमाणीकरण प्रमाण-पत्र को चुरा लेने के लिए कोई भी हमेशा आपके सिल्वरलाइट एप्लिकेशन को इंजीनियर कर सकता है। आप इस रिवर्स इंजीनियरिंग प्रक्रिया को अन्यथा से अधिक कठिन बना सकते हैं, लेकिन आप इसे असंभव नहीं बना सकते हैं।
कोई समस्या क्यों है यदि कोई कस्टम क्लाइंट से आपका यूआरएल एक्सेस करता है? आप उपयोगकर्ता प्रमाणीकृत कर रहे हैं, है ना?
नहीं, इस मामले में उपयोगकर्ता प्रमाणित नहीं है। – Michel
- 1. जावा (ओवरफ्लो और इतने पर) में विधियों को सुरक्षित करने के लिए कैसे करें
- 2. मेरी वेबसाइट को सुरक्षित करने के लिए कैसे करें
- 3. एज़ूर ब्लब्स को सुरक्षित करने के लिए कैसे करें
- 4. थ्रेड सुरक्षित कतारों को कार्यान्वित करने के लिए कैसे करें
- 5. मेरे सी कोड को व्यवस्थित करने के लिए कैसे करें
- 6. .net में webservice को सुरक्षित करने के लिए कैसे?
- 7. आईआईएस सर्वर प्रदर्शन को ट्रैक करने के लिए कैसे करें
- 8. मेरे सर्वर
- 9. "इस पृष्ठ में सुरक्षित और गैर-सुरक्षित वस्तुओं दोनों को ट्रैक करने के लिए कैसे करें"
- 10. मेरे कोड को और अधिक सुरक्षित बनाने के लिए कैसे करें
- 11. जावास्क्रिप्ट विधियों को थ्रेड-सुरक्षित या सिंक्रनाइज़ करने के लिए कॉल कर रहे हैं?
- 12. कैसे CouchDB सुरक्षित करने के लिए
- 13. लाइव वेबसाइट को सुरक्षित रूप से अपडेट करने के लिए
- 14. NSUserDefaults को कैसे सुरक्षित करें?
- 15. मेरे अमेज़ॅन ईसी 2 उदाहरण के लिए काम करने के लिए कोडा को कॉन्फ़िगर कैसे करें?
- 16. बड़े पैरामीटर सूचियों के साथ विधियों को प्रारूपित करने के लिए कैसे करें
- 17. एक्सटेंशन विधियों को कैसे समूहित करें?
- 18. सीओआरएस को सक्षम करने के लिए सुरक्षित कब है?
- 19. सी # विधियों को कैसे निर्यात करें?
- 20. थ्रेड-सुरक्षित उपयोग के लिए स्थिर वर्ग के दायरे को सीमित करने के लिए AppDomain का उपयोग कैसे करें?
- 21. मेरे Wpf UserControl के लिए DisplayMemberPath को कैसे कार्यान्वित करें?
- 22. रूबी - विधियों को पास करने के लिए ब्लॉक
- 23. अवरुद्ध करने के लिए - अवरुद्ध नाली() विधियों
- 24. मेरे गिट-एकीकृत कैलिडोस्कोप को सभी फाइलों को प्रदर्शित करने के लिए कैसे प्राप्त करें?
- 25. मॉडेल डायलॉग को मेरे दूसरे शीर्ष-स्तरीय फ़्रेम को अवरोधित करने के लिए कैसे करें
- 26. मेरे कस्टम इटरेटर के लिए iteritems फ़ंक्शन को कार्यान्वित करें?
- 27. सभी नियंत्रकों को सुरक्षित करने के लिए Zend_Auth का उपयोग
- 28. सभी आईआईएस सेटिंग्स को एक सर्वर से दूसरे सर्वर में सुरक्षित रूप से कैसे निर्यात करें?
- 29. Android में सुरक्षित तत्व में डेटा को स्टोर करने के लिए कैसे करें
- 30. KDB/Q वेब इंटरफ़ेस को सुरक्षित करने के लिए कैसे करें
धन्यवाद, मैं प्रमाणीकरण तंत्र को लागू करूंगा। – Michel