2009-09-28 19 views
10

वे उपयोगकर्ताओं को 2 टेबल में क्यों विभाजित करते हैं? जैसे वे aspnet_ सदस्यता और aspnet_users मिला।एएसपीनेट सदस्यता में उपयोगकर्ता तालिका और सदस्यता तालिका क्यों है?

क्या ऐसा इसलिए है क्योंकि उनके पास सदस्यता सामग्री इतनी लंबी है?

उत्तर

10

सदस्यता प्रबंधन से पहचान/प्रमाणीकरण प्रबंधन को अलग करना है। "बड़ी" उपयोगकर्ता तालिका वास्तविक पहचान भंडार है - उदाहरण के लिए, यदि आप अपने पहचान डेटा को स्टोर करने के लिए SQL का उपयोग करना चाहते हैं, तो यह सब यहां पर जाता है। लेकिन आप कुछ अन्य स्रोतों का उपयोग करना चाह सकते हैं - कहें, सक्रिय निर्देशिका - अपनी पहचान भंडार बनने के लिए। इसके बजाय आप इसके खिलाफ पहचान और प्रमाणीकरण मान्य करते हैं, लेकिन आपको अभी भी एडी-आधारित पहचान डेटा में SQL- आधारित भूमिका/सदस्यता डेटा में शामिल होने का कोई तरीका होना चाहिए। यही वह जगह है जहां छोटी तालिका आती है - उन रिश्तों को बनाए रखने के लिए पर्याप्त जानकारी।

+0

मैं एएसपीनेट सदस्यता को कम कर रहा हूं क्योंकि टेबल की बहुत सारी जरूरत नहीं है और जब से मैंने कुछ सामान किया है, मैंने सभी अंतर्निहित विधि को बेकार कर दिया है। तो मैं यह पता लगाने की कोशिश कर रहा हूं कि मुझे इस तरह के डेटा को विभाजित करना चाहिए या इसे एक टेबल में चिपका देना चाहिए। अनुशंसित दृष्टिकोण क्या है? – chobo2

+1

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

2

यह एक उपयोगकर्ता डेटाबेस से कई अनुप्रयोगों को सुरक्षित करने के लिए है; aspnet_membership में UserId और ApplicationId है इसलिए प्रत्येक उपयोगकर्ता के पास एकाधिक अनुप्रयोगों के लिए एक अलग पासवर्ड हो सकता है (और एक एप्लिकेशन से भी लॉक हो सकता है लेकिन दूसरे नहीं)।

+2

यह सच है, लेकिन दूसरी तालिका में वह जानकारी भी है, इसलिए आपने जवाब नहीं दिया है कि दो अलग-अलग टेबल क्यों मौजूद हैं। –

संबंधित मुद्दे