2010-06-10 10 views
13

मैं PHP में एक ओपनआईडी उपभोक्ता विकसित कर रहा हूं और शानदार लाइट ओपेनिड लाइब्रेरी (http://gitorious.org/lightopenid) का उपयोग कर रहा हूं। उदाहरण क्लाइंट स्क्रिप्ट में मिले मेरे कोड को बंद करना मैंने सफलतापूर्वक उपभोक्ता बनाया है। हालांकि, मैंने एक स्नैग में भाग लिया है: Google को openid.identity और openid.claimed_id को "http://specs.openid.net/auth/2.0/identifier_select" पर सेट करने की आवश्यकता है (here देखें)। अगर मैं ऐसा करता हूं तो यह काम करता है लेकिन अन्य प्रदाताओं (यानी एओएल) नहीं करते हैं। OpenID चश्मा के विपरीत यह केवल OpenID प्रदाता जहां identifier_select की आवश्यकता है, -क्या Google एकमात्र ओपनआईडी प्रदाता है जिसके लिए "पहचानकर्ता_ चयन" की आवश्यकता है?

  1. गूगल एक कोने मामला है:

    यहाँ मेरी सवाल कर रहे हैं?

  2. क्या LightOpenID लाइब्रेरी में कोई कमी है?
  3. क्या मेरी समझ है कि OpenID कैसे काम करता है?
  4. यदि Google एकमात्र प्रदाता नहीं है जिसके लिए identifier_select की आवश्यकता है तो उनमें से एक सीमित संख्या है जिसमें मैं केवल हार्डकोड करूंगा, या ओपनआईडी स्पेक के माध्यम से इसे निर्धारित करने के लिए कुछ है?

मैं ओपनआईडी के आंतरिक लोगों के लिए नया हूं इसलिए यह आश्चर्यचकित नहीं होगा कि यह एक बेवकूफ सवाल है। इंटरनेट को खराब करने के बाद मुझे इस विषय पर कोई जानकारी नहीं मिली है।

+1

निश्चित रूप से एक गूंगा सवाल नहीं है (यदि वे मौजूद हैं), तो आपने पर्याप्त जानकारी, प्रासंगिक लिंक, अच्छी तरह से तैयार प्रश्न और एक नोट भी प्रदान किया है जिसे आपने वास्तव में स्वयं के लिए देखा था! –

उत्तर

6

Google spec का विरोध नहीं कर रहा है। ओपनआईडी 2.0 spec पूरी तरह पहचानकर्ता के लिए अनुमति देता है, जो "निर्देशित पहचान" कहलाता है, जिसे Google एकमात्र उल्लेखनीय ओपी (जिसे मैं जानता हूं) वास्तव में करने की क्षमता का उपयोग करता है।

और हां, पूरी तरह से और सही ढंग से कार्यान्वित ओपनआईडी आरपी लाइब्रेरी स्वचालित रूप से नोटिस करेगी कि Google (और इसके जैसा कोई अन्य ओपी) पहचानकर्ता की आवश्यकता है क्योंकि यह पहचानकर्ता खोज चरण का हिस्सा है जो इस पर उठाता है। आप जिस लाइब्रेरी का उपयोग कर रहे हैं उसके बारे में खेद है, लेकिन ऐसा लगता है कि यह आपको ओपनआईडी के अपूर्ण कार्यान्वयन के कारण दुःख का कारण बन रहा है।

और वैसे, एओएल समर्थन पहचानकर्ता_ चयन करें।

+1

ऐसा लगता है कि मुझे पुस्तकालय (LightOpenID) का विस्तार करना होगा। दो लोकप्रिय PHP ओपनआईडी लाइब्रेरीज़ (ज़ेंड घटक और जेनरैन का PHP-OpenID) मुझे आवश्यकतानुसार अधिक लचीलापन प्रदान करता है और लाइट ओपनिड के रूप में एक इंटरफ़ेस के रूप में अच्छा नहीं है। मुझे शुभकामनाएँ दें! – Skrat

+0

मुझे लगता है कि अधिकांश समर्थन निर्देशित पहचान, Myopenid और याहू सहित। – Artefacto

+0

आर्टेफैक्टो, मुझे लगता है कि आप पहचानकर्ता पहचान के साथ निर्देशित पहचान भ्रमित कर रहे हैं, जो अलग-अलग चीजें हैं। Identifier_select ओपी पहचानकर्ता-आरंभिक ओपनआईडी अनुभव है जहां उपयोगकर्ता को अपने स्वयं के पहचानकर्ता को नहीं पता है। "निर्देशित पहचान" वह जगह है जहां ओपी प्रत्येक आरपी के लिए एक जोड़ीदार अद्वितीय पहचानकर्ता प्रदान करता है जिसमें उपयोगकर्ता लॉग इन करता है। उदाहरण के लिए याहू पहचानकर्ता_ चयन का समर्थन करता है, लेकिन * नहीं * निर्देशित पहचान। –

0

इसका उपयोग ओपी संचालित आईडी चयन मोड में प्रमाणीकृत करने के लिए किया जाता है। यह कम आम है लेकिन एक कोने का मामला नहीं है। मेरे द्वारा उपयोग किए जाने वाले सभी ओपी प्रदाताओं में से, मैंने देखा कि Google और याहू को इसकी आवश्यकता है।

यह ओपनआईडी 2.0 में निर्देशित पहचान का समर्थन करने के लिए आवश्यक है। असल में, आपको अलग-अलग वेबसाइट के लिए एक अलग ओपनआईडी मिलती है। गोपनीयता समर्थकों द्वारा इस मॉडल में जाने के लिए एक धक्का है इसलिए मुझे लगता है कि आपको इसे जल्द या बाद में समर्थन देना होगा।

+0

क्या यह पता लगाने का कोई तरीका है कि उपयोगकर्ता को रीडायरेक्ट करने से पहले प्रदाता को निर्देशित पहचान की आवश्यकता होती है? मैं याहू और Google के लिए हार्डकोड समर्थन कर सकता हूं लेकिन मुझे अभी भी एक और अधिक लचीला समाधान की तलाश में मेरी उम्मीदें मिल गई हैं। ओपनआईडी चश्मे में शायद कुछ ऐसा है जो मुझे याद आ रहा है, कुछ स्पष्ट है। – Skrat

+0

ओपनआईडी 1.0 के विपरीत, आपको OpenID 2.0 प्रदाता के लिए कुछ प्रावधान कार्य करना होगा। उदाहरण के लिए, आपको NASCAR लोगो के साथ अपनी साइट को प्लास्टर करने की आवश्यकता है क्योंकि आप उम्मीद नहीं कर सकते कि ओपनआईडी 2.0 यूआरएल क्या है। इसके लिए आप अपनी साइट कॉन्फ़िगरेशन में केवल एक झंडा जोड़ सकते हैं। –

7

लाइट ओपेनिड लेखक यहां।

  1. कल्पना यह अनुमति देता है, तो यह शायद केवल एक (अन्य उत्तर उल्लेख याहू)
  2. नहीं, नहीं – है LightOpenID इस का समर्थन करता है नहीं है। (लाइब्रेरी में example-google.php देखें)।
  3. आपको अभी भी एक खोज यूआरएल जानने की जरूरत है, इसलिए आपको प्रदाता को जानना होगा। या उपयोगकर्ताओं को उनकी पहचान के रूप में https://www.google.com/accounts/o8/id दर्ज करने के लिए कहें।

ध्यान दें कि यह उत्तर मेरी लाइब्रेरी के नवीनतम संस्करण के बारे में है, जिसे इस प्रश्न के बाद धक्का दिया गया था।किसी भी व्यक्ति के लिए अभी भी इस समस्या से जूझ रहे हैं, कृपया newest version

+0

मेव, आपकी लाइब्रेरी के अपडेट के लिए धन्यवाद जिसे आपने केवल कुछ दिन पहले धक्का दिया था। अब "identifier_select" का उपयोग स्वचालित है (यानी खोज प्रक्रिया में बनाया गया है) जिसका अर्थ है कि LightOpenID का उपयोग सभी प्रदाताओं के लिए समान तरीके से कार्य करेगा। फिर से धन्यवाद, महान काम जारी रखें। मुझे आपकी लाइब्रेरी पसंद है, ऐसे साफ (पढ़ना 'पठनीय') कोड दुर्लभ है। – Skrat

+0

मैं अभी ओपनआईडी प्रलोभन में गिर गया हूं, मैं बस इतना कहना चाहता था कि मैं बिल्कुल आपकी कक्षा से प्यार करता हूं। मैं ओपनआईडी अवधारणा के लिए अभी भी बहुत हरा हूं, मैंने रात भर इसके बारे में पढ़ा है लेकिन मैं अभी भी एएक्स और एसआरईजी को समझ नहीं सकता - लेकिन कल एक और दिन है! साथ ही, क्या आपको दिमाग होगा यदि मैंने आपके कोड को फोर्क करने और इसे अपने ओएसएस प्रोजेक्ट (http://sf.net/projects/phunction/) के हिस्से के रूप में रिलीज़ करने का प्रयास किया है, तो एमआईटी भी लाइसेंस प्राप्त है? –

+0

@ एलिक्स एक्सेल: चूंकि आपकी परियोजना एमआईटी लाइसेंस प्राप्त है, इसलिए आप निश्चित रूप से जानते हैं कि लाइसेंस इसकी अनुमति देता है। दूसरे शब्दों में: निश्चित रूप से आप कर सकते हैं, जब तक आप दावा नहीं करते कि आपने इसे लिखा है। साथ ही, आपको गहराई से समझना नहीं है कि एसआरईजी/एएक्स कैसे काम करता है। यह किसी उपयोगकर्ता के बारे में अतिरिक्त जानकारी लाने का एक तरीका है, और आप इसे ओशनल या आवश्यक के रूप में चिह्नित कर सकते हैं। केवल एक चीज जिसे आप जानना चाहते हैं वह एएक्स फ़ील्ड नाम है, जो http://www.axschema.org/types/ पर पाया जा सकता है। यदि आपके कोई अतिरिक्त प्रश्न हैं, तो बस मुझे संदेश भेजें। – Mewp

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