के दौरान "मुझे याद रखें" को लागू करने के लिए कुकीज़ में मुझे क्या स्टोर करना चाहिए, मेरे पास अपनी वेबसाइट के लिए एक लॉगिन सिस्टम है, डेटाबेस में संग्रहीत उपयोगकर्ता का विवरण उपयोगकर्ता आईडी (प्रत्येक उपयोगकर्ता के लिए अद्वितीय है और पहचानकर्ता), ईमेल पता (अद्वितीय), प्रदर्शन नाम (अद्वितीय नहीं), पासवर्ड और membersince।
अब मुझे कुकीज़ में क्या स्टोर करना चाहिए? मैं केवल समाप्ति तिथि के साथ कुकी में उपयोगकर्ता आईडी को संग्रहीत करने के बारे में सोच रहा था और फिर यदि उपयोगकर्ता कुकी के लिए साइन अप करने के बाद मेरी वेबसाइट पर फिर से जाता है और उसे लॉग इन करता है (किस तरह का मुझे सही नहीं लगता है) और कुकी को नष्ट कर दें अगर वह लॉग आउट करने का फैसला करता है।
* थोड़ा सा स्पष्टीकरण भी बहुत उपयोगी होगा। धन्यवादउपयोगकर्ता लॉगिन
उत्तर
यदि आप किसी गुप्त कुंजी के साथ साइन इन करते हैं तो केवल यूजरिड को कुकी में ही स्टोर कर सकते हैं, केवल आपके एप्लिकेशन ही जानते हैं। अन्यथा उपयोगकर्ता के लिए कुकी को कुछ भी बदलने और किसी और के रूप में लॉगिन करना संभव है। इसलिए, यदि आप उपयोगकर्ता आईडी को स्टोर करना चाहते हैं, तो गुप्त आईडी के साथ उपयोगकर्ता आईडी का हैश (आदर्श रूप से HMAC का उपयोग करके) और जब आप उन्हें लॉग इन करना चाहते हैं, तो उसी हैश की गणना करें और कुकी से हैश से इसकी तुलना करें। एक और समाधान एक यादृच्छिक टोकन उत्पन्न करना है, इसे डेटाबेस में संग्रहीत करना और कुकी में इसका उपयोग करना है। यदि यह लंबा और यादृच्छिक है, तो बहुत कम मौका है कि कोई अन्य व्यक्ति के टोकन का अनुमान लगाएगा।
धन्यवाद बहुत आदमी – halocursed
धन्यवाद! लेकिन आपका क्या मतलब है "गुप्त कुंजी के साथ उपयोगकर्ता आईडी"। अगर मैं एक बुरे आदमी हूं और मैं पूरी कुकी को स्टील करता हूं, और इस हैश स्ट्रिंग को नाटक करने के लिए मिलता हूं तो मैं लॉग इन करता हूं, क्या सर्वर जानता है कि मैं गलत व्यक्ति हूं? – Jaskey
गुप्त कुंजी का बिंदु यह सुनिश्चित करना है कि आप कुकी को सेट करके बस किसी भी उपयोगकर्ता के रूप में "लॉगिन" नहीं कर सकते। गुप्त कुंजी को जानने के बिना, आपके पास कुकी बनाने का कोई तरीका नहीं है। यदि आप किसी मौजूदा उपयोगकर्ता के लिए पूरी कुकी को स्टील करते हैं, तो आप निश्चित रूप से उस उपयोगकर्ता के रूप में लॉगिन कर सकते हैं। इसे रोकने के लिए आप कुछ तरीके कर सकते हैं: 1) कुकी को कुछ समय के बाद समाप्त कर दें (कुकी में टाइमस्टैम्प एन्कोड करें), 2) कुकी को एक निश्चित आईपी पते पर विशिष्ट बनाएं (फिर से, कुकी में आईपी एड्रेस को एन्कोड करें), 3) इसे एक निश्चित उपयोगकर्ता-एजेंट स्ट्रिंग के लिए विशिष्ट बनाएं (हालांकि इसे आसानी से फिक किया जा सकता है) –
पीएचपी अंतर्निहित सत्र प्रबंधन करता है कि आप के लिए क्या चाहिए, तो:
http://us.php.net/manual/en/book.session.php
मैं कुकी में user_id स्टोर करने की अनुशंसा नहीं होता। इसके बजाए, आप एक अद्वितीय टोकन उत्पन्न कर सकते हैं और अपने डेटाबेस में उपयोगकर्ताओं के साथ टोकन को जोड़ सकते हैं, और & प्रत्येक अनुरोध पर टोकन को पुन: उत्पन्न कर सकते हैं। दोबारा, यह थोड़ा अनावश्यक है, क्योंकि सत्र प्रबंधन पहले से ही PHP में बनाया गया है।
क्या आप उस पर थोड़ा सा स्पष्टीकरण दे सकते हैं। – halocursed
बस कुकी को 2 दिनों तक समाप्त करें या उस दिन की संख्या जिसे आप उपयोगकर्ता को याद रखना चाहते हैं और कुकी को सहेजना चाहते हैं।
PHP '$ _SESSION यह आपके लिए करता है। यदि आप पूर्ण नियंत्रण पसंद करते हैं तो आप अपनी खुद की सत्र कक्षा भी लिख सकते हैं।
एक छोटा सा ट्यूटोरियल यहाँ पाया जाता है: http://www.tizag.com/phpT/phpsessions.php
यहाँ php डिफ़ॉल्ट के बजाय दुकान सत्र के लिए mysql उपयोग करने के लिए एक छोटा सा उदाहरण है (/ tmp में फाइल): http://www.hawkee.com/snippet/2018/
- 1. Meteor.js उपयोगकर्ता लॉगिन जानकारी
- 2. एएसपी.नेट उपयोगकर्ता लॉगिन सर्वोत्तम प्रथाओं
- 3. ldapjs प्रमाणीकरण (उपयोगकर्ता लॉगिन सेटअप)
- 4. DynamoDB और उपयोगकर्ता लॉगिन तालिका
- 5. सरल सदस्यता: उपयोगकर्ता की अंतिम लॉगिन तिथि
- 6. एसक्यूएल सर्वर 2008 लॉगिन उपयोगकर्ता मैपिंग
- 7. Django मल्टी-उपयोगकर्ता लॉगिन - सर्वोत्तम दृष्टिकोण?
- 8. PHP/सत्र: प्रति उपयोगकर्ता एक लॉगिन करें?
- 9. रुपेक कैपिबरा उपयोगकर्ता लॉगिन नहीं कर सकता
- 10. Magento SOAP वेब सेवा -> उपयोगकर्ता लॉगिन
- 11. Google के साथ लॉगिन हमेशा उपयोगकर्ता सहमति
- 12. जीडब्ल्यूटी आवेदन में उपयोगकर्ता पंजीकरण/लॉगिन प्रबंधन
- 13. लॉगिन
- 14. लॉगिन()
- 15. वेबसाइट लॉगिन
- 16. लॉगिन नाम
- 17. आईओएस: लॉगिन के बाद उपयोगकर्ता को प्रमाणीकृत कैसे करें (ऑटो लॉगिन के लिए)?
- 18. लॉगिन द्वारा अनुरोधित डेटाबेस नहीं खोल सकता है। लॉगिन विफल रहा। उपयोगकर्ता
- 19. एएसपी.NET लॉगिन उपयोगकर्ता की एनटी प्राधिकरण \ नेटवर्क्स सेवा '
- 20. वर्डप्रेस में पहले लॉगिन के बाद उपयोगकर्ता को रीडायरेक्ट करें?
- 21. ओएथ (फेसबुक, ट्विटर) और मूल लॉगिन - उपयोगकर्ता तालिका
- 22. PHP/MySQL साइट में समवर्ती उपयोगकर्ता लॉगिन को कैसे रोकें?
- 23. विशिष्ट उपयोगकर्ता django द्वारा लॉगिन की संख्या गिनती?
- 24. Google ऐप इंजन - उपयोगकर्ता लॉगिन कैसे याद रखें?
- 25. लॉगिन के लिए उपयोगकर्ता नाम या ईमेल आईडी?
- 26. Django लॉगिन, लॉगआउट यूआरएल और वर्तमान उपयोगकर्ता नाम
- 27. वसंत सुरक्षा - उपयोगकर्ता विवरण सेवा कार्यान्वयन - लॉगिन विफलता
- 28. एफ़टीपी त्रुटि 530 उपयोगकर्ता लॉगिन नहीं कर सकता
- 29. लॉगिन (रेल) के बाद उपयोगकर्ता को पिछले पृष्ठ पर लौटें
- 30. एसक्यूएल एक मौजूदा उपयोगकर्ता को लॉगिन करता है
की तरह आप पहले से ही जवाब दे दिया है लगता है खुद सवाल, उपयोगकर्ता आईडी स्टोर करें। – TechTravelThink
यह सुरक्षित नहीं है - नीचे दिए गए उत्तरों देखें। – Jon