मैं काफी OpenId के लिए नया हूँ और मैं OpenId उपयोग करने के लिए कैसे एक बार प्रमाणीकरण पूरा हो गया है समझने में कुछ समस्या का एक सा हो रही है।सर्वश्रेष्ठ अभ्यास?
मैं एक नया साइट बना रहा हूं, और मैं काम कर रहा OpenID प्रमाणीकरण प्राप्त करने में कोई समस्या नहीं मिला है। लेकिन मुझे यकीन नहीं है कि उपयोगकर्ता लॉग इन करने के बाद मुझे उपयोगकर्ता से संबंधित डेटा कैसे स्टोर करना चाहिए।
ओपनआईडी से पहले, मेरे पास अपनी पंजीकरण प्रक्रिया होगी, एक अद्वितीय उपयोगकर्ता आईडी (पूर्णांक) के साथ एक उपयोगकर्ताटेबल, और अन्य सभी तालिकाओं कुछ उपयोगकर्ता सक्रियता से संबंधित डेटा में उपयोगकर्ता की पहचान करने वाला उपयोगकर्ता आईडी कॉलम होगा।
अब मैं अपने टेबल में OpenId आईडी का उपयोग करना चाहिए? मैं एक बहुत आसान OpenId-> UserId मेज है कि हर लॉगिन करने के लिए मैप किया गया है और डेटा पहले के रूप में जमा है बनाना चाहिए? और क्या होता है जब कोई उपयोगकर्ता विभिन्न ओपनआईडी प्रदाताओं का उपयोग करना चाहता है?
तो मुझे लगता है कि कि जब कोई उपयोगकर्ता प्रमाणीकृत है, मैं अपने उपयोगकर्ता तालिका की जाँच करनी चाहिए और देखें कि क्या OpenID मौजूद है, अगर एक नई पंक्ति नहीं बना ... लेकिन आप (सुरक्षित तरीके से) लोगों को कैसे अनुमति नहीं मौजूदा ओपनआईडी को मौजूदा उपयोगकर्ता आईडी में मैप करने के लिए? – Bjorn
हां, असल में, यदि उपयोगकर्ता अभी तक अज्ञात 'ओपनआईडी' के साथ आता है तो यह पूछना सबसे अच्छा होगा कि क्या उपयोगकर्ता एक नया खाता बनाना चाहता है या इसे मौजूदा में जोड़ना चाहता है (बाद के मामले में उपयोगकर्ता को प्रमाणित करना होगा अन्य ओपनआईडी)। OpenID के प्रबंधन के लिए सुरक्षित तरीके का सवाल है - यह कम या ज्यादा यूआई बात है। समाधानों में से एक सफल 'ओपनआईडी' राउंडट्रिप (या अनचाहे पहचान दावा) के बाद पुष्टि के लिए पूछेगा। दूसरा राउंडट्रिप के लिए एक विशेष नॉन या कुकी का उपयोग करना होगा। जो भी आप साथ आ सकते हैं। –