2011-09-07 5 views
5

के लिए प्रमाणीकरण और प्रमाणीकरण समाधान मैं कुछ समय से सिनात्रा और पैड्रिनो दोनों के साथ प्रोग्रामिंग कर रहा हूं। हालांकि, मैं अभी भी पैड्रिनो के लिए सही प्रमाणीकरण और प्रमाणीकरण समाधान नहीं ढूंढ पा रहा हूं। मुझे अपनी उम्मीदों और जो मैंने पहले ही कोशिश की है, उसे समझाएं।पैड्रिनो

सिनात्रा के साथ, मैंने सफलतापूर्वक sinatra-authentication मणि role_model मणि के साथ सफलतापूर्वक उपयोग किया। मैं आमतौर पर मोंगोडीबी से बात करने के लिए मोंगोइड ओआरएम का उपयोग करता हूं। इन दोनों रत्नों ने एक साथ प्रवेश नियंत्रण लागू करने के लिए लॉग इन उपयोगकर्ता की भूमिकाओं की जांच करने, मार्गों की रक्षा करने, स्वस्थता का ख्याल रखने की अनुमति दी।

sinatra-प्रमाणीकरण Padrino के साथ काम नहीं करता है - यह सिनात्रा के लिए बहुत विशिष्ट है। मैंने इसे कई बार कोशिश की। मैंने पहले से ही पैड्रिनो मॉड्यूल के साथ सर्वव्यापी और वार्डन दोनों की कोशिश की है, लेकिन एक कारण या किसी अन्य कारण से मैं उन्हें अद्भुत सिनात्रा-ऑटेंटिकेशन मणि के रूप में काम करने में सक्षम नहीं हूं।

तो - इससे पहले कि मैं अपने स्वयं के समाधान को लागू करने का प्रयास कर सकूं (या पैड्रिनो को सिनात्रा-प्रमाणीकरण पोर्टिंग) - क्या कोई अन्य प्रमाणीकरण और प्रमाणीकरण समाधान सुझा सकता है? फिलहाल मुझे किसी भी तरह की कल्पना की आवश्यकता नहीं है - सरल डेटाबेस-आधारित प्रमाणीकरण बस पूरी तरह से काम करेगा।

उत्तर

0

मैं बिल्टिन प्रमाणीकरण समाधान का उपयोग करने का सुझाव देता हूं, केवल पैड्रिनो-एडमिन पर एक नज़र डालें, आप किसी भी ऐप के अंदर व्यवस्थापक के बिना पैड्रिनो :: प्रमाणीकरण का उपयोग कर सकते हैं।

यह बहुत आसान, भूमिका/पथ आधारित है।

http://www.padrinorb.com/api/Padrino/Admin/AccessControl/Base.html#allowed%3F-instance_method

+3

पैड्रिनो-एडमिन का उपयोग करके आप व्यवस्थापक द्वारा उत्पन्न खाता मॉडल (या कामकाज) के साथ काम करने के लिए मजबूर करते हैं यह); जो ओपी के लिए अनुकूल नहीं हो सकता है। सबसे महत्वपूर्ण बात यह है कि खुले सुरक्षा मुद्दे हैं (https://github.com/padrino/padrino-framework/issues/384) उत्पादन में पैड्रिनो-एडमिन को तैनात करने वाले किसी भी व्यक्ति को अवगत होना चाहिए। – pithyless

+2

वह सुरक्षा समस्या 2 साल पहले बंद थी, भविष्य के दर्शक – Jonah

1

Padrino has been discussed के लिए एक स्टैंडअलोन प्रमाणीकरण समाधान, लेकिन अभी तक हल नहीं किया गया। इस बीच, padrino-warden का उपयोग करने के लिए एक लोकप्रिय सुझाव है।

अस्वीकरण: मैं ओपी के समान स्थिति में हूं और उत्पादन में व्यक्तिगत-वार्डन चलाने में कोई अनुभव नहीं है।

+0

यूप, इस पर कुछ प्रकाश डालने के लिए - यह v1.0 के लिए निर्धारित किया गया है। हम आपके स्वयं के समाधान (सिफारिशों/सुझावों के साथ) और प्राधिकरण और प्रमाणीकरण के बीच अलग-अलग चिंताओं को प्लग करने के लिए एक एपीआई लागू करना समाप्त कर सकते हैं। @pithyless द्वारा हाइलाइट किए गए मुद्दे पर ट्यून करें। –

1

रायन बेट्स के पास यह कैसे करें (मुफ्त में नहीं: http://railscasts.com/episodes/250-authentication-from-scratch-revised) पर एक महान रेल स्क्रीनकास्ट है।

Rails Magic को अनुकूलित करना बहुत मुश्किल नहीं होना चाहिए और सिनात्रा या पैड्रिनो के लिए भी यही काम करना चाहिए।

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

3

मुझे पता है कि सवाल दो साल का है। लेकिन मुझे हाल ही में एक ही परेशानी थी कि पैड्रिनो-वार्डन बुरी तरह से दस्तावेज किया गया था और मुझे कई समस्याओं का सामना करना पड़ा। तो मैंने workaround.org पर अपने निष्कर्षों को दस्तावेज किया। यह कम भाग्यशाली मदद कर सकते हैं।

मैं पैड्रिनो-एडमिन से सीखने के लिए एक अच्छा मचान मानता हूं। लेकिन उपयोगकर्ता मॉडल बल्कि लचीला है। और प्राधिकरण अवधारणा अजीब तरह से कर रही है जो पैड्रिनो के लेखकों को पसंद नहीं है: नियंत्रकों में कॉन्फ़िगरेशन को स्थानांतरित करने के बजाय केंद्रीय स्थान पर कॉन्फ़िगरेशन पथ डालना। (पैड्रिनो-एडमिन में और अधिक समस्याएं हैं जैसे लापता अंकन और विदेशी कुंजी के लिए अनुपलब्ध समर्थन। इसलिए यह Django प्रदान करता है जो दूरस्थ रूप से तुलनीय नहीं है।)