2011-12-06 13 views
6

मेरे प्लगइन के लिए सबसे अच्छा सुरक्षा तकनीक है नीचे चित्र द्वारा दर्शाया प्रवाह गई है:कौन सा मेरी जावास्क्रिप्ट प्लगइन

MyPlugin.js flows

आवश्यकता onclick लेनदेन प्रमाणीकरण के बाद ऐसा करने के लिए है। यही है, केवल डोमेन के मालिक जिसमें page.html शामिल है, मेरी साइट के साथ पंजीकृत है (उदाहरण के लिए www.MyPluginJS.com/register) क्या वह MyPlugin.js का उपयोग कर सकता है।

मेरा पंजीकरण पोर्टल सफल पुनर्मूल्यांकन के बाद Client ID निकालता है।

मेरा प्रश्न है:

  1. सबसे अच्छा तरीका मैं क्रम में उपयोग करने के लिए onclick लेनदेन को सुरक्षित बनाने की जरूरत क्या है?
  2. अन्य पैरामीटर क्या हैं (उदाहरण: एमडी 5 फिंगरप्रिंट) मुझे यह सुनिश्चित करने की आवश्यकता हो सकती है कि लेनदेन सुरक्षित रूप से होता है?
  3. क्या कोई मौजूदा ढांचायां हैं (उदाहरण के लिए ओएथ) कि मैं लाभ उठा सकता हूं?

मुझे लोगों को MyPlugin.js का उपयोग करने से रोकने के लिए एक तरीका चाहिए जो पंजीकृत नहीं है।

मैं सुरक्षा तकनीकों के साथ अनुभवहीन हूं लेकिन मैं कोड का प्रबंधन कर सकता हूं।

अग्रिम में :)

+0

वास्तव में जावास्क्रिप्ट के साथ सुरक्षा के बारे में बात करना यथार्थवादी नहीं है - मुझे इसके बजाय जो भी ऑथ टोकन मिल गया है, उसके आधार पर सर्वर पक्ष से उस .js फ़ाइल तक पहुंच/ब्लॉक करने का तरीका ढूंढ जाएगा ... – Leon

+0

@Leon आपके लिए धन्यवाद समय :) मैं .js फ़ाइल तक पहुंच कैसे रोकूं ?? – codemaniac

+0

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

उत्तर

1

धन्यवाद आप कुछ सर्वर साइड भाषा का प्रयोग जे एस फ़ाइल की सेवा और जे एस फ़ाइल, पे के लिए अनुरोध करने के लिए एक मुख्य/मान जोड़े जोड़ सकते हैं:? MyPlugin.js कुंजी = someValue। आपकी स्क्रिप्ट मान की तुलना कुछ डीबी तालिका मानों से कर सकती है जहां आप अधिकृत उपयोगकर्ताओं को संग्रहीत करते हैं।

HTH, मिगुएल

1

jQuery का उपयोग करके आप <script> टैग का उपयोग करने से परहेज सर्वर साइड से एक जावास्क्रिप्ट फ़ाइल लोड करने के समारोह $.getScript(url) का लाभ ले सकते।

विचार है कि getScript फ़ंक्शन को सर्वर-साइड स्क्रिप्ट पर इंगित करना है जो पहले आपके उपयोगकर्ता के सत्र को मान्य करेगा और यदि सत्र मान्य है, तो यह आपकी जावास्क्रिप्ट फ़ाइल सामग्री को लोड या एक शून्य जावास्क्रिप्ट फ़ाइल को अन्यथा वापस कर देगा।

1

मैंने कुछ लोगों को अपने वेबसर्वर पर दिनांक/समय का उपयोग करके सुरक्षा स्तर बनाने के लिए देखा है जो @ मिची का उल्लेख कर रहा है। हालांकि, मैंने व्यक्तिगत रूप से कोशिश नहीं की है।

1

मुझे लगता है कि उपयोगकर्ता को लॉग इन करने के लिए सर्वर पक्ष पर बनाए गए session का उपयोग करना चाहिए। यदि आप सत्र चर सेट करते हैं तो क्लाइंट पक्ष (उपयोगकर्ता सुविधा के लिए) की जांच कर सकते हैं, और फिर सत्र सर्वर पक्ष को मान्य कर सकते हैं (सुरक्षा के लिए) क्लाइंट साइड कोड के साथ उपयोगकर्ता छेड़छाड़ से बचने के लिए।

तब आप प्लगइन पेज की सामग्री को आईफ्रेम में लोड करने के लिए AJAX का उपयोग कर सकते हैं। jQuery AJAX को प्रबंधित करने के लिए बहुत आसान बनाता है।

तो मेरे द्वारा सरल जवाब सर्वर साइड स्क्रिप्टिंग का उपयोग करना है, और सुरक्षा सुनिश्चित करने के लिए सत्र चर, और उपयोगकर्ता सुविधा के लिए क्लाइंट पक्ष पर jQuery और AJAX का उपयोग करना है।

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