मैं मानक .NET सदस्यता प्रदाता का उपयोग कर रहा हूं, और सोचा कि मैं देखता हूं कि कोई इस पर प्रकाश डाल सकता है या नहीं।ValidateUser और अधिक क्यों नहीं लौटाता है?
कॉलिंग ValidateUser या तो सत्य या गलत लौटाता है। अब चूंकि विधि उपयोगकर्ता नाम और पासवर्ड स्वीकार करती है, इसलिए कोई कारण यह होगा कि रिटर्न परिणाम अमान्य उपयोगकर्ता नाम या पासवर्ड को प्रतिबिंबित करेगा। फिर भी अगर हम इसमें आगे बढ़ते हैं, तो हम पाते हैं कि यह IsLockedOut और IsAproved भी जांच रहा है।
public override bool ValidateUser (string username, string password)
{
MembershipUser user = GetUser (username, false);
/* if the user is locked out, return false immediately */
if (user.IsLockedOut)
return false;
/* if the user is not yet approved, return false */
if (!user.IsApproved)
return false;
......
मेरे आवेदन में, मैं अपने स्वयं के साधनों के लिए स्वीकृत का उपयोग करना चाहता हूं। बस अपना खुद का प्रदाता रोलिंग काम नहीं करेगा क्योंकि मैं अभी भी एक बूल परिणाम के लिए बाध्य हूँ। एक उपयोगकर्ता बनाना हमें आवश्यक सारी जानकारी देता है, तो ValidateUser क्यों नहीं? क्या मैं कुछ भूल रहा हूँ?
सही समझ में आता है! – mickyjtwin
परिदृश्य # 4 के लिए, यदि मैं एक उपयोगी उपयोगकर्ता था, अतिरिक्त जानकारी के बिना, मैं अपने बालों को फाड़ रहा था ... उपयोगकर्ता नाम पासवर्ड कॉम्बो सही है, लेकिन मैं लॉग इन नहीं कर सकता! – escist
@escist हाँ, और असली दुनिया में जब मेरा खाता बंद हो जाता है और मैं अंदर नहीं आ सकता, यह बिल्कुल मेरी प्रतिक्रिया है। कुंजी एक वैकल्पिक पथ है जो उपयोगकर्ता को यह पता लगाने की अनुमति देता है कि "सिरिल क्रैकर" को जानकारी दिए बिना क्या हो रहा है। कुछ साइटें उपयोगकर्ता को ईमेल किए गए एकल उपयोग यूआरएल पर भरोसा करती हैं, लेकिन अन्य दृष्टिकोण भी हैं। – Bevan