में प्रमाणित उपयोगकर्ताओं को संदर्भित करने के लिए उपयोगकर्ता नाम या उपयोगकर्ता का आईडी उपयोग करना चाहिए, इसलिए मेरी सरल सीखने की वेबसाइट में, मैं एएसपी.NET प्रमाणीकरण प्रणाली में निर्मित का उपयोग करता हूं।क्या मुझे एएसपी.NET
मैं अब उसकी जिप की तरह सामान को बचाने के लिए एक उपयोगकर्ता तालिका द्वारा जोड़ा जा रहा, जन्म तिथि आदि मेरा प्रश्न है:
- नई तालिका में, कुंजी उपयोगकर्ता नाम (स्ट्रिंग) या उपयोगकर्ता होना चाहिए आईडी वह GUID दिखने वाला नंबर है जिसे वे
asp_ tables
में उपयोग करते हैं। - यदि सबसे अच्छा अभ्यास उस बदसूरत guid का उपयोग करना है, तो क्या किसी को यह पता है कि इसे कैसे प्राप्त किया जाए? ऐसा लगता है कि नाम (
System.Web.HttpContext.Current.User.Identity.Name
) - यदि आप सुझाव देते हैं कि मैं न तो उपयोग करता हूं (गाइड नहीं और न ही उपयोगकर्ता नाम फ़ील्ड ASP.NET प्रमाणीकरण द्वारा प्रदान किया जाता है) तो मैं इसे एएसपी.NET प्रमाणीकरण के साथ कैसे कर सकता हूं? मुझे पसंद है कि एक विकल्प उपयोगकर्ता के ईमेल पते का उपयोग लॉगिन के रूप में करना है, लेकिन मैं एएसपी.NET प्रमाणीकरण प्रणाली को उपयोगकर्ता नाम के बजाय ईमेल पता का उपयोग कैसे करूं? (या वहाँ कोई लेना देना नहीं है, यह सिर्फ है मुझे निर्णय लेने से मैं "पता" उपयोगकर्ता नाम वास्तव में एक ईमेल पता है
कृपया ध्यान दें:?
- मैं कैसे में एक GUID मिल पर नहीं कह रहा हूँ नेट, मैं सिर्फ userID स्तंभ के लिए
asp_ tables
में GUID के रूप में GUID जिक्र कर रहा हूँ। - उपयोगकर्ता नाम ASP.NET प्रमाणीकरण में अद्वितीय है।
का उपयोग कर उपयोगकर्ता किसी कारण से अपने उपयोगकर्ता नाम बदलना चाहता है, तो उपयोगकर्ता नाम है के साथ मुख्य समस्या यह है के बाद एक अतिरिक्त बंद कोष्टक है। यदि आप उपयोगकर्ता नाम का उपयोग करते हैं तो आपको केवल एक के बजाय कई तालिकाओं में परिवर्तन करना होगा। नोट: इस टिप्पणी को फिर नीचे पढ़ें और किसी और ने इसका उल्लेख किया। – percent20
अन्य संभावित समस्या तब उत्पन्न होती है जब उपयोगकर्ता नाम समय के साथ पुन: उपयोग किया जा सकता है। उदाहरण के लिए, मान लीजिए कि आप अपने कस्टम प्राधिकरण मॉडल में उपयोगकर्ता नाम का उपयोग करते हैं। उपयोगकर्ता एएसमिथ को व्यवस्थापक के रूप में असाइन किया गया है। उसके बाद वह कंपनी छोड़ देता है और उसका उपयोगकर्ता रिकॉर्ड हटा दिया जाता है। एक नया उपयोगकर्ता कंपनी में शामिल होता है और उपयोगकर्ता नाम एस्मिथ असाइन किया जाता है। आपने संभावित रूप से उस उपयोगकर्ता व्यवस्थापक को इसे महसूस किए बिना पहुंच प्रदान की है। –