मुख्य यहाँ ध्यान में रखना बात को रोकने के लिए है कि जब है भाग निकले रहे प्रश्नों बनाने AJAX का उपयोग करके आप अनिवार्य रूप से अपने डेटाबेस में एक इंटरफ़ेस प्रदान कर रहे हैं। उदाहरण के लिए, यदि आप डुप्लिकेट उपयोगकर्ता नाम (जो आप जावास्क्रिप्ट में नहीं कर सकते हैं) या डुप्लिकेट ईमेल की जांच कर रहे हैं, तो एक संदेश प्रदान करने के लिए जैसे कि "यह उपयोगकर्ता नाम पहले से उपयोग में है ... कृपया एक और प्रयास करें", आप एक इंटरफेस प्रदान कर रहे हैं एक संभावित हैकर के लिए तत्काल जांचें कि कौन से उपयोगकर्ता नाम और/या ईमेल उपलब्ध हैं। सुरक्षा विचार जावास्क्रिप्ट के समान नहीं हैं। इस विषय पर आपको मेरी सलाह है (1) डेटाबेस तक पहुंचने के लिए पैरामीटरयुक्त प्रश्नों का उपयोग करें क्योंकि किसी ने पहले से ही सुझाव दिया है। (2) AJAX .php पृष्ठ पर देरी लागू करें - लंबाई परिदृश्य पर निर्भर करती है - मैं लगभग 1 सेकंड (3) धुंध पर AJAX निष्पादित करता हूं, या फोकस खोने पर, प्रत्येक कीप्रेस पर नहीं, (4) चेक लागू करें आपके AJAX हैंडलर में यह सुनिश्चित करता है कि अनुरोध अपेक्षित पृष्ठ से आता है (यानी: हैकर ने कुछ यादृच्छिक स्क्रिप्ट नहीं लिखी)। (5) केवल AJAX कॉल करें जब फॉर्म तत्व का कुछ अन्य मूल सत्यापन हुआ है [यानी: मूल जावास्क्रिप्ट सत्यापन]
मुझे उम्मीद है कि इससे मदद मिलती है। AJAX का उपयोग कर फ़ॉर्म सत्यापन बिल्कुल जावास्क्रिप्ट सत्यापन के समान दूरस्थ रूप से कुछ भी नहीं है। यह आपके डेटाबेस में एक इंटरफ़ेस है, और आपको इसके साथ सावधान रहना होगा।
यह कल्पना करने में सहायता करता है कि आप अपनी साइट पर कैसे हैक करेंगे - यह जानकर कि आपकी साइट के साथ कौन से ईमेल पते पंजीकृत हैं, शुरू करने के लिए एक शानदार जगह है। इसलिए मैं सामान्य शब्दों और/या नामों का उपयोग करके यादृच्छिक ईमेल पतों को उत्पन्न करने के लिए एक स्क्रिप्ट लिख सकता हूं और अपनी साइट पर पंजीकृत ईमेल पते की एक सूची प्राप्त करने के लिए अपने AJAX हैंडलर को हथौड़ा कर सकता हूं। मैं इसे जल्दी से कर सकता हूं अगर आपने सलाह (1) - (5) का पालन नहीं किया है तो मैंने ऊपर बताया है। एक बार मेरे पास ईमेल होने के बाद, मैं बस उन्हें Google ... संभावना है कि मुझे एक नाम देता है। मैं वहां से उपयोगकर्ता नाम अनुमान लगा सकता हूं। तो अब मेरे पास उपयोगकर्ता नाम और ईमेल हैं। पासवर्ड को समझाने में बहुत लंबा समय लगेगा, लेकिन अगर मैं आसानी से उपयोगकर्ता नाम या ईमेल प्राप्त कर सकता हूं ... यह आपको लक्ष्य के रूप में चिह्नित करता है और आपको अधिक ध्यान मिलेगा जो आप वास्तव में चाहते हैं।
मैं फिलहाल एक पंजीकरण सत्यापन प्रणाली पर काम कर रहा हूं - आईडी अगर आप चाहें तो इसे साझा करने में प्रसन्न रहें। शायद मैं कुछ महत्वपूर्ण याद कर रहा हूँ!
शांति बाहर।
स्रोत
2016-05-05 22:27:49
जहां तक मुझे पता है कि AJAX XMLHttpRequest का उपयोग कर रहा है, जो स्वयं जावास्क्रिप्ट ऑब्जेक्ट है, इसलिए यदि आप AJAX और जावास्क्रिप्ट को अलग करते हैं तो यह अजीब लगता है। लेकिन वैसे भी, AJAX ताज़ा किए बिना पोस्ट/जीईटी की तरह है, इसलिए जब तक आप अपना सत्यापन सर्वर-साइड ठीक से करते हैं, तो आपको ठीक होना चाहिए। और नहीं, अगर आप सुरक्षित रूप से कोड नहीं करते हैं तो कुछ भी सुरक्षित नहीं है। –
धन्यवाद :-) यह PHP/AJAX का उपयोग करने के पीछे भी मेरा तर्क था - यह (उचित रूप से) रीयलटाइम है लेकिन PHP की सापेक्ष सुरक्षा है। – Bojangles