Oauth 2.0 101

विषयसूची:

Anonim

कई लग्जरी कारें वैलेट की के साथ आती हैं। यह एक विशेष कुंजी है जिसे आप पार्किंग अटेंडेंट देते हैं और अपनी नियमित कुंजी के विपरीत, केवल ट्रंक और ऑनबोर्ड सेल फोन तक पहुंच को अवरुद्ध करते हुए कार को थोड़ी दूरी तक चलाने की अनुमति देगा। भले ही प्रतिबंध कुंजी लगाता है, विचार बहुत चालाक है। आप किसी अन्य व्यक्ति को अनलॉक करने के लिए किसी अन्य कुंजी का उपयोग करते हुए किसी विशेष कुंजी के साथ अपनी कार तक सीमित पहुंच देते हैं। - OAuth 1.0 की आधिकारिक गाइड


इस तरह से समुदाय आधारित विनिर्देश दिशानिर्देशों ने 2007 में OAuth के तरीके को समझाया। जबकि OAuth 2.0 एक पूरी तरह से नया प्रोटोकॉल है, वही विवरण अभी भी लागू होता है - OAuth उपयोगकर्ताओं को उनके लिए तृतीय-पक्ष पहुंच (और सीमित पहुंच) प्रदान करने का एक तरीका है। अपने पासवर्ड को साझा किए बिना संसाधन।


यदि आप नियमित रूप से इंटरनेट पर हैं, तो संभावना है कि आप एक साइट पर आए हैं जो OAuth का उपयोग करता है। आखिरकार, दुनिया की सबसे बड़ी वेबसाइट्स, जैसे कि फेसबुक, गूगल, माइस्पेस, ट्विटर, फोटोबुक, याहू, एवरनोट और वीमो इस प्रमाणीकरण मानक का उपयोग करती हैं। इस मानक के बारे में अधिक जानने के लिए आगे पढ़ें, और क्यों अगली पीढ़ी, OAuth 2.0, अभी भी अपेक्षाकृत प्रयोगात्मक आधार पर उपयोग किया जा रहा है।

OAuth 2.0 क्या है?

सबसे पहले, आपको यह जानना होगा कि एक प्रोटोकॉल के रूप में OAuth क्या करता है: यह दो वेब या डेस्कटॉप ऐप्स के बीच एप्लिकेशन प्रोग्रामिंग इंटरफ़ेस प्राधिकरण की अनुमति देता है। नतीजतन, वेबसाइटें संरक्षित संसाधनों को अन्य वेबसाइटों और सेवाओं के साथ साझा करने में सक्षम हैं।


उदाहरण के लिए, यदि आप अपने iPad पर दोस्तों के साथ स्क्रैम्बल खेलते हैं, तो आप अपने फेसबुक क्रेडेंशियल्स में प्रवेश कर सकते हैं, जिससे गेम को आपकी मित्र सूची से देखने की अनुमति मिलती है कि उनमें से कौन सा गेम खेल रहे हैं - और दूसरों को इसमें शामिल होने के लिए आमंत्रित करें। या आप ट्विटर पर आपके द्वारा अनुसरण किए जाने के आधार पर Google+ पर दोस्तों से जुड़ सकते हैं। इस प्रकार के एप्लिकेशन उपयोगकर्ताओं के लिए उपयोगी होते हैं, लेकिन उनमें एक साइट या किसी अन्य साइट पर आपके बारे में जानकारी तक पहुंच प्रदान करना शामिल होता है।


OAuth 2.0 OAuth के पहले अवतार की तरह काम करता है, लेकिन यह पूरी तरह से एक नया मानक है। इसका मतलब यह है कि यह OAuth 1.0 के साथ संगत नहीं है। संस्करण 2.0 ने मूल OAuth के साथ कई समस्याओं को साफ किया और सुधार किए।


मूल रूप से पहले संस्करण की वास्तुकला को बनाए रखते हुए, 2.0 में सुधार हुआ:

  • प्रमाणीकरण और हस्ताक्षर। OAuth 2.0 ने प्रोटोकॉल को लागू करने के लिए क्लाइंट पक्ष पर किसी के लिए इसे आसान बना दिया।
  • उपयोगकर्ता अनुभव और टोकन जारी करने के वैकल्पिक तरीके
  • प्रदर्शन, विशेष रूप से बड़ी वेबसाइटों और सेवाओं के साथ
OAuth 2.0 के साथ नया क्या है, इस पर एक अधिक व्यापक विवरण एरन हैमर द्वारा प्रदान किया गया है, जो OAuth कार्य समूह का हिस्सा हुआ करता था। आप इसे यहां एक्सेस कर सकते हैं। हालांकि, ध्यान दें कि मानक लागू करते समय सुरक्षा चिंताओं के साथ मुद्दों का हवाला देते हुए हैमर ने 2012 के जुलाई में काम करने वाले समूह को छोड़ दिया। परिणामस्वरूप, हालांकि OAuth को 2010 के अंत तक अंतिम रूप दिया जाना था, यह एक प्रस्तावित मानक (लेखन के समय) बना हुआ है, हालांकि यह फेसबुक के ग्राफ एपीआई का हिस्सा है। Google और Microsoft अपने एपीआई में OAuth 2.0 समर्थन के साथ प्रयोग कर रहे हैं।

OAuth 2.0 का उपयोग करने के लाभ

OAuth का उपयोग करने का एक सबसे अच्छा कारण यह है कि यह साझा करना इतना आसान बनाता है। हम पहले से ही Instagram पर फ़ोटो अपलोड करने और ट्विटर और फेसबुक पर अपने आप पोस्ट करने के लिए उपयोग किए जाते हैं। वास्तव में, यह इस तरह का उपयोग और क्रॉसओवर की आसानी है जो सोशल मीडिया को इतना आकर्षक बना रहा है।


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


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


आप यह भी सीमित कर सकते हैं कि आपके OAuth के माध्यम से कौन से संसाधन एक्सेस किए गए हैं। उदाहरण के लिए, फेसबुक पर गेम खेलते समय, आप निर्दिष्ट कर सकते हैं कि आप चाहते हैं कि गेम आपकी ओर से दीवार पर पोस्ट किया जाए या नहीं।


डेवलपर के लिए, OAuth 2.0 प्रमाणीकरण, सामाजिक संपर्क प्रदर्शन और उपयोगकर्ता प्रोफ़ाइल प्रदर्शन के लिए पहले से ही विकसित कोड प्रदान करता है। इसका अर्थ है कि डेवलपर्स के लिए कम जोखिम और कम जोखिम, क्योंकि एपीआई पहले ही डिबग, परीक्षण और सिद्ध हो चुका है। अंत में, आप अपने सर्वर पर संग्रहीत डेटा कम होने से भी लाभान्वित होते हैं।

कैसे OAuth 2.0 आया

यह काफी स्पष्ट है कि OAuth सुरक्षित कंप्यूटिंग और विभिन्न वेब सेवाओं के लिए उपयोग में आसानी के लिए कॉल का जवाब है। दूसरी ओर, OAuth 2.0, OAuth को कम जटिल बनाने की आवश्यकता से उत्पन्न हुई। लेकिन दोनों के लिए पूरा विचार वास्तव में ओपनआईडी से आया था।


OpenID एक ऐसी सेवा है जो उपयोगकर्ताओं को किसी अन्य वेबसाइट से लॉगिन क्रेडेंशियल का उपयोग करके विभिन्न सेवाओं में प्रवेश करने की अनुमति देती है। लेकिन ओपनआईडी बहुत सीमित थी, इसलिए विभिन्न प्राधिकरण प्रोटोकॉल पर काम करने वाले लोगों का एक समूह अपनी साइटों के लिए एक साथ मिल गया। पहला OAuth कार्यान्वयन 2007 में किया गया था, और पहला संशोधन दो साल बाद आया था।


OAuth 2.0 2010 में दृश्य पर आया था। इसका उद्देश्य ग्राहक-डेवलपर की सादगी पर ध्यान केंद्रित करना और उपयोगकर्ता अनुभव में सुधार करते हुए अधिक आसानी से मापनीय होना था।

आगे की चुनौतियां?

हालाँकि Google, Klout और अन्य बड़े नाम OAuth 2.0 को लागू कर रहे हैं, फिर भी इस प्रोटोकॉल को आगे बढ़ाते हुए एक पथरीली सड़क हो सकती है। OAuth 2.0 समुदाय के भीतर से आलोचनाएं हैं, जिसमें प्रोटोकॉल की सुरक्षा के बारे में चिंताएं शामिल हैं (कई लोग मानते हैं कि यह OAuth 1.0 से कम सुरक्षित है)।


हैमर के अनुसार, यदि एक सक्षम प्रोग्रामर द्वारा उपयोग किया जाता है जो वेब सुरक्षा में अच्छी तरह से वाकिफ है, तो OAuth 2.0 काम करता है। दुर्भाग्य से, डेवलपर्स के केवल एक छोटे से अल्पसंख्यक उस बिल को फिट करते हैं।


इसके अलावा, OAuth 2.0 कोड पुन: प्रयोज्य नहीं हैं। उदाहरण के लिए, फेसबुक द्वारा उपयोग किए गए OAuth 2.0 प्रोटोकॉल अन्य साइट द्वारा आसानी से उपयोग करने योग्य नहीं होंगे। क्या अधिक है, नया प्रोटोकॉल वास्तव में मूल की तुलना में बहुत अधिक जटिल है।


लेकिन कई लोगों के लिए असली किकर यह है कि OAuth 2.0 1.0 से अधिक किसी भी वास्तविक लाभ या सुधार की पेशकश नहीं करता है। हैमर लिखते हैं कि यदि आप 1.0 को सफलतापूर्वक लागू कर रहे हैं, तो 2.0 में अपग्रेड करने का कोई कारण नहीं है।


OAuth 2.0, अभी भी बहुत अधिक जीवित है। यदि यह उठाए जा रहे आलोचनाओं और मुद्दों को संबोधित करता है, तो यह अभी भी एक बहुत शक्तिशाली प्रोटोकॉल के रूप में एक जगह पा सकता है। हालांकि, लेखन के समय, संस्करण 1.0 को अभी भी OAuth का आधिकारिक, स्थिर और परीक्षणित संस्करण माना जाता है। फिर भी, उन डेवलपर्स के लिए जो ऑनलाइन दुनिया में बड़े नामों के साथ काम करना चाहते हैं, इस प्रोटोकॉल को सुरक्षित रूप से लागू करना भविष्य में बहुत दूर नहीं एक महत्वपूर्ण कौशल बन सकता है।

Oauth 2.0 101