2011-08-08 10 views
8

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

  • मैं मेज कि http://site/api/tasks/bob
    के लिए एक ajax कॉल मैं यह है कि केवल बॉब, में लॉग इन सुनिश्चित करने की आवश्यकता करता है, उस तालिका (अन्यथा कोई ऐसा जो पैटर्न जानता बॉब के देखने के लिए अनुरोध कर सकते हैं पढ़ सकते हैं ब्राउज़र में यूआरएल दर्ज करके कार्य)।
  • एक अलग पृष्ठ पर
  • , एक ही मेज http://site/api/tasks/all फोन और सभी उपयोगकर्ताओं के कार्यों को दिखाने के लिए सक्षम होने की जरूरत

अपना समय यह पढ़ के लिए धन्यवाद (केवल एक व्यवस्थापक कि ऐसा करने में सक्षम होना चाहिए) और शायद इसका जवाब दे। प्रत्येक अनुरोध पर

ए) HTTP-प्रमाणीकरण (या तो basic या digest):

उत्तर

14

हजार फुट दृश्य आपको उपयोगकर्ता या तो साथ प्रमाणित करने की जरूरत है।

बी) सर्वर-साइड सत्र। (उपयोगकर्ता एक सत्र कुंजी प्रमाणीकृत करता है और प्राप्त करता है - उनकी उपयोगकर्ता जानकारी सर्वर पर सत्र बैकएंड में संग्रहीत होती है, उस कुंजी से जुड़ी होती है, एक बार उनके पास सत्र होने के बाद वे आपके सत्र कुंजी को वापस पास करने के अनुरोध कर सकते हैं (या तो यूआरएल में या एक कुकी) और सूचना उनके पास पहुंच है उन्हें लौटा है करने के लिए)

बोतल उपयोगी extensions उस चीज़ की इस तरह के एक बड़े हिस्से के साथ सौदा की एक जोड़ी है -। कैसे प्राधिकरण के उदाहरण देखने के Flask-Login और Flask-Principal की जाँच फ्लास्क एप्लिकेशन में जोड़ा जा सकता है।

+0

मुझे दूसरे को कार्यान्वित करने के तरीके के बारे में अधिक जानकारी प्राप्त करना अच्छा लगेगा। – pocorschi

+0

@InnocentPixel - फ्लास्क में एक पूरी तरह से प्रलेखित सत्र एपीआई पहले से ही अंतर्निहित है। देखें: http://flask.pocoo.org/docs/api/#sessions –