यह मेरे लिए एक पुन: संक्रमित समस्या प्रतीत होता है क्योंकि मुझे पिछले कुछ वर्षों में मोबाइल एप्लिकेशन के आसपास गुरुत्वाकर्षण लगता है। मैं वेब उपयोगकर्ताओं के अलावा मोबाइल उपयोगकर्ताओं को प्रमाणीकृत और अधिकृत करना चाहता हूं। मुझे यह निर्बाध बनाने की ज़रूरत है ताकि उपयोगकर्ता अपने डेटा में बाधा उत्पन्न किए बिना वेब खाता प्राप्त कर सकें। मैं चाहता हूं कि समाधान विषय में वास्तुशिल्प बनें, किसी भी भाषा/ढांचे के लिए विशिष्ट नहीं।मोबाइल और वेब उपयोगकर्ताओं के प्रमाणीकरण/प्रमाणीकरण के लिए आर्किटेक्चर
आवश्यकताओं/अनुमान
- मोबाइल उपयोगकर्ताओं के लिए सामग्री योगदान के लिए सहित (पसंदीदा अंकन, फोटो अपलोड करने, आदि), एक लॉगिन के बिना स्थानीय एप्लिकेशन का उपयोग करने के लिए सक्षम होना चाहिए।
- मोबाइल उपयोगकर्ता को सुरक्षित रूप से और विशिष्ट रूप से खाता प्रमाण-पत्र निर्दिष्ट किए बिना वेब सेवा के लिए प्रमाणित होना चाहिए।
- मोबाइल उपयोगकर्ता में कई डिवाइस हो सकते हैं, जो एक-दूसरे से अनजान होंगे।
- मोबाइल उपयोगकर्ता पंजीकरण/लॉगिन करने में सक्षम होना चाहिए, जो किसी भी सामग्री में खाते के स्वामित्व में रोल करना चाहिए। यह "सिंक्रनाइज़ेशन" प्रत्येक खाते के साथ होना चाहिए जो बाद में लॉग इन किया गया है।
- इससे कोई फर्क नहीं पड़ता कि मोबाइल या वेब पर खाता बनाया गया था या नहीं।
आर्किटेक्चर
- माना नहीं शर्ट, जूते नहीं, कोई प्रवेश = कोई योगदान। किसी भी प्रकार की सामग्री का योगदान करने के लिए लॉगिन की आवश्यकता है। यह एक मास्टर खाते के साथ डिवाइस खातों को "सिंक्रनाइज़" करने की आवश्यकता को रोकता है। डिवाइस लॉगिन करने के लिए बस एक ही उपयोगकर्ता नाम/पासवर्ड + टोकन की आवश्यकता होती है। सर्वर ऑब्जेक्ट्स: उपयोगकर्ता, रोल
- मल्टी-डिवाइस स्व-प्रमाणीकरण। सर्वर डिवाइस के साथ बातचीत करता है और डिवाइस को स्टोर करने वाले प्रमाण-पत्रों को हाथ देता है। प्रत्येक डिवाइस स्व-प्रमाणीकरण करता है और एक अनाम खाते से जुड़ा होता है जब तक रजिस्टर/लॉगिन नहीं होता है। यदि रजिस्टर होता है, तो अनाम खाता ज्ञात खाते में परिवर्तित हो जाता है। यदि लॉगिन होता है, तो अनाम खाते से सामग्री को ज्ञात खाते में ले जाया जाता है और फिर फेंक दिया जाता है। स्व-प्रमाणीकरण विवरण खोने वाले उपकरणों को नए प्रमाणीकरण विवरण मिलेंगे, और पिछला अनाम खाता छोड़ दिया जाएगा (और फिर उम्मीद है कि बाद में फेंक दिया जाएगा) और पुन: विश्राम नहीं किया जाएगा क्योंकि इसे किसी ज्ञात खाते में कभी परिवर्तित नहीं किया गया था। सर्वर ऑब्जेक्ट्स: उपयोगकर्ता, रोल, डिवाइस
आपको क्या लगता है कि एक अच्छा समाधान है? इनमें से एक, या कुछ और?
मुझे वास्तव में आपकी सोच की रेखा पसंद है। मुझे यकीन नहीं है कि यह वास्तव में इस विशेष समस्या से संपर्क करने के लिए सामान्य तकनीकों को दिखाता है, लेकिन मैं आपकी प्रतिक्रिया की बहुत सराहना करता हूं। (ध्यान दें कि मैंने 2010 में इस प्रतिक्रिया को वापस पढ़ा था, लेकिन मुझे अब आपको यह बताने के लिए मजबूर होना पड़ा कि इसकी सराहना की और उपयोगी थी) –