2012-05-04 9 views
5

में संसाधन स्वामी प्रमाण-पत्र के रूप में एक फेसबुक एक्सेस टोकन का उपयोग करना OAuth 2.0 विनिर्देश Resource Owner Password Credentials Grant Type को परिभाषित करता है, जो संसाधन स्वामी पासवर्ड प्रमाण-पत्र (यानी उपयोगकर्ता नाम और पासवर्ड) को सीधे पहुंच प्राप्त करने के लिए प्राधिकरण अनुदान के रूप में उपयोग करने की अनुमति देता है टोकन।OAuth2.0

मैं उपयोगकर्ता को सीधे प्रमाण पत्र प्रदान करने के बजाय ग्राहक पर 'फेसबुक के माध्यम से लॉगिन' करने की अनुमति देना चाहता हूं। ग्राहक प्राधिकरण सर्वर के लिए एक्सेस टोकन के लिए उपयोगकर्ता के फेसबुक एक्सेस टोकन का आदान-प्रदान कर सकता था। क्या यह योजना OAuth2 के ढांचे में फिट है?

उत्तर

2

क्लाइंट प्राधिकरण सर्वर के लिए एक्सेस टोकन के लिए उपयोगकर्ता के फेसबुक एक्सेस टोकन का आदान-प्रदान कर सकता था।

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

OAuth 2.0 कल्पना (V25) से

चित्रा 5 पर आप कार्यप्रवाह परिभाषा पा सकते हैं:

  1. संसाधन स्वामी अपने उपयोगकर्ता नाम और पासवर्ड के साथ ग्राहक प्रदान करता है।

  2. क्लाइंट प्राधिकरण सर्वर के टोकन एंडपॉइंट से संसाधन टोकन से प्राप्त प्रमाण-पत्रों सहित एक एक्सेस टोकन का अनुरोध करता है। जब अनुरोध कर रहा है, तो क्लाइंट प्रमाणीकरण सर्वर के साथ प्रमाणित करता है।

  3. प्राधिकरण सर्वर क्लाइंट को प्रमाणीकृत करता है और संसाधन स्वामी प्रमाण-पत्र मान्य करता है, और यदि वैध समस्याएं टोकन को मान्य करती हैं।

    आदेश अपनी साइट में उपयोगकर्ता लॉग ऑन करने के लिए, तीन चीज़ें हो की जरूरत है:

यह फेसबुक http://developers.facebook.com/docs/guides/web/ से एक उद्धरण है। सबसे पहले, फेसबुक को उपयोगकर्ता को प्रमाणीकृत करने की आवश्यकता है। यह सुनिश्चित करता है कि उपयोगकर्ता वह है जो वे कहते हैं कि वे हैं। दूसरा, फेसबुक को आपकी वेबसाइट को प्रमाणित करने की आवश्यकता है। यह सुनिश्चित करता है कि उपयोगकर्ता आपकी जानकारी आपकी साइट पर दे रहा है और किसी और को नहीं। अंत में, उपयोगकर्ता को अपनी वेबसाइट तक स्पष्ट रूप से अपनी वेबसाइट तक अधिकृत करना होगा। यह सुनिश्चित करता है कि उपयोगकर्ता जानता है कि वे आपकी साइट पर किस डेटा का खुलासा कर रहे हैं।

दोनों जगहों पर आपके पास एक और एक प्राधिकरण सर्वर है - आपके मामले में - फेसबुक।

+0

हां, इस योजना में वास्तव में 2 प्राधिकरण सर्वर हैं। पहला हमारे एपीआई का हिस्सा है और दूसरा एफबी है। इसलिए मैंने सोचा कि क्या ग्राहक के पास पहले से उपयोगकर्ता का एफबी एक्सेस टोकन है, तो यह टोकन का उपयोग उपयोगकर्ता के क्रेडेंशियल्स (लॉगिन/पासॉर्ड में प्रवेश करने की आवश्यकता नहीं) के रूप में कर सकता है। फिर हमारा प्राधिकरण सर्वर जांच सकता है कि टोकन मान्य है या नहीं और एक नया टोकन जारी करें (हमारे अपने सर्वर के लिए)। मुझे उम्मीद है कि यह समझ में आता है :) –

+0

और जैसा कि मैंने अपनी प्रतिक्रिया में लिखा है, इसलिए प्राधिकरण कोड अनुदान का उपयोग करना समझ में आता है। –

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