2011-10-14 6 views
6

मैं कॉफ़ीस्क्रिप्ट (जावास्क्रिप्ट) की दुनिया में नया हूं। वर्तमान में मेरा पहला बैकबोन.जेएस ऐप बनाना जो एसएसएल पर रेल बैकएंड के साथ संचार करता है।backbone.js में सुरक्षा?

पिछले कुछ वर्षों में मुझे पर कई बार बताया गया है "जावास्क्रिप्ट सुरक्षा बेकार है, इसलिए यदि संभव हो तो सभी तर्क सर्वर-साइड निष्पादित करें।" मुझे सर्वर-साइड सुरक्षा पर एक हैंडल मिला है, लेकिन ग्राहक के बारे में क्या?

यह संभव है कि मेरे कुछ रीढ़ की हड्डी मॉडल में ऐसी जानकारी होगी जो उपयोगकर्ता रक्षा करना चाहते हैं।

अद्यतन 1: @Nupul के जवाब में, मैं (integer, string, datetime) के tuples की रक्षा करना चाहता हूं। कुछ भी नहीं जो किसी भी दूरस्थ प्रणाली समझौता कर सकता है।

अद्यतन 2: तो केवल एक चीज के बारे में पता होना करने के लिए रीढ़ की हड्डी के लिए एक ही डेटा है कि एक एक js मुक्त एचटीएमएल ध्यान में रखते हुए प्रदान करने के लिए सुरक्षित करने पर विचार करेंगे प्रदान करने के लिए है?

+0

मुझे यकीन नहीं है कि आप पहले स्थान पर क्या रक्षा करना चाहते हैं ... मॉडल में डेटा केवल परिवर्तनीय डेटा/सामग्री है जो क्लाइंट साइड पर छेड़छाड़ की जाती है ... जो आप ट्रांसमिट करते हैं वह शायद एसएसएल से अधिक होगा इसलिए मैं मुझे यकीन नहीं है कि आप वास्तव में क्या रक्षा करना चाहते हैं? मॉडलों में सबकुछ एन्क्रिप्ट करने का प्रयास करें यदि यह बहुत अधिक चिंता का विषय है, लेकिन आप जल्द ही इसे ओवरकिल, प्रदर्शन पर कम महसूस करेंगे और शायद इसके लायक नहीं होंगे :) – PhD

+0

@Alex: re: ** अपडेट 2 **: हाँ, यह है सही। –

+0

@ जेरेमीबैंक धन्यवाद! –

उत्तर

11

जावास्क्रिप्ट सुरक्षा, जिसका मतलब है, केवल चूसना नहीं है, यह सचमुच असंभव है। आप क्लाइंट पर चलाए गए ट्रस्ट कोड नहीं कर सकते हैं। आपको अपने प्रोग्राम को इस तरह से व्यवस्थित करने की आवश्यकता होगी कि आपका सर्वर कभी भी क्लाइंट के कंप्यूटर पर जानकारी नहीं भेजता जबतक कि आप उन्हें इसे देखने में सक्षम न हों।

+5

किसी दुर्भावनापूर्ण उपयोगकर्ता के लिए एसएसएल पर उपयोगकर्ता के मॉडल में डेटा देखने के लिए उसे पृष्ठ पर घूमने वाले उपयोगकर्ता की मशीन पर "बैठना" होना चाहिए, सामग्री में देखने के लिए मिनीस्क्रिप्ट जावास्क्रिप्ट और डिबगिंग पढ़ने पर उपयुक्त होना चाहिए और backbone.js – PhD

+0

पता होना चाहिए @Alex: एक गंभीर नोट पर, आप क्या रक्षा करना चाहते हैं? – PhD

+0

हां, @ जेरेमीबैंक्स बिल्कुल सही है, "आप क्लाइंट पर चलने वाले कोड पर भरोसा नहीं कर सकते हैं" हमेशा सर्वर-साइड पर सुरक्षा जांच को लागू करना चाहिए, यह भी सोचने के बिना कि आपके पास क्लाइंट-साइड पर सुरक्षा जांच पूरी तरह से उन चेक को अनदेखा करती है। –