यह वेबसाइट कुकीज़ का उपयोग करती है। साइट ब्राउज़ करना जारी रखकर आप इन फ़ाइलों के उपयोग की सहमति देते हैं।

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

सरल शब्दों में OAuth क्या है

OAuth (Open Authorization) एक प्राधिकरण प्रोटोकॉल है जो एक अनुप्रयोग को किसी अन्य सेवा पर आपके डेटा तक पहुंच प्राप्त करने की अनुमति देता है, बिना उसे आपका लॉगिन और पासवर्ड स्थानांतरित किए। पासवर्ड के बजाय, अनुप्रयोग एक विशेष अस्थायी एक्सेस कुंजी (टोकन) प्राप्त करता है।

OAuth प्राधिकरण प्रवाह: क्लाइंट से रिसोर्स सर्वर तक OAuth प्रवाह का आरेख: उपयोगकर्ता → क्लाइंट एप्लिकेशन → प्राधिकरण सर्वर (टोकन अनुरोध) → रिसोर्स सर्वर (API), एक्सेस टोकन का उपयोग करके। OAuth प्राधिकरण प्रवाह पासवर्ड साझा किए बिना सुरक्षित डेटा एक्सेस 👤 उपयोगकर्ता 🖥️ क्लाइंट 1. एक्सेस का अनुरोध 🔐 प्राधिकरण सर्वर 2. एक्सेस टोकन जारी करना 🔑 एक्सेस टोकन (अस्थायी) 3. टोकन के साथ डेटा का अनुरोध 📊 रिसोर्स सर्वर 4. डेटा एक्सेस सुरक्षा · सीमित पहुँच · रद्द करने की क्षमता
OAuth — आरेख 1

सरल शब्दों में, OAuth एक डिजिटल पास जैसा है जो आप किसी अतिथि को देते हैं ताकि वह आपके अपार्टमेंट में प्रवेश कर सके, लेकिन केवल दालान तक, सभी कमरों में नहीं। आप उसे सभी दरवाजों की चाबियां (आपका पासवर्ड) नहीं देते, बल्कि सीमित अधिकारों वाला केवल एक विशेष एक बार का पास देते हैं।

एक उत्कृष्ट उदाहरण किसी भी वेबसाइट पर "Google से साइन इन करें" या "VKontakte से साइन इन करें" बटन है। आप बटन दबाते हैं, आपको Google पेज पर पुनर्निर्देशित किया जाता है, जहां आप अपना पासवर्ड दर्ज करते हैं (लेकिन तीसरे पक्ष की साइट पर नहीं!), पहुंच की पुष्टि करते हैं, और साइट को केवल वही प्राप्त होता है जो आपने अनुमति दी — उदाहरण के लिए, आपका नाम और ईमेल। आपका पासवर्ड गुप्त रहता है।

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

OAuth वेब अनुप्रयोगों की सुरक्षा से कैसे संबंधित है, इसके बारे में सूचना सुरक्षा लेख में पढ़ें।

OAuth कैसे काम करता है

OAuth प्रक्रिया को डिजिटल पास प्राप्त करने के रूप में कल्पना किया जा सकता है। इसमें चार पक्ष भाग लेते हैं:

  • संसाधन का स्वामी (Resource Owner): यह आप हैं — वह उपयोगकर्ता जो डेटा का स्वामी है और अनुमति देता है।
  • क्लाइंट: एक तीसरे पक्ष का अनुप्रयोग जो आपके डेटा तक पहुंच प्राप्त करना चाहता है (उदाहरण के लिए, एक मोबाइल अनुप्रयोग या वेबसाइट)।
  • प्राधिकरण सर्वर (Authorization Server): वह सर्वर जो आपकी पहचान सत्यापित करता है और टोकन जारी करता है (उदाहरण के लिए, Google Accounts, GitHub)।
  • संसाधन सर्वर (Resource Server): वह सर्वर जहां आपका डेटा संग्रहीत है (उदाहरण के लिए, Google Drive या VK प्रोफ़ाइल API)।

प्रक्रिया इस प्रकार दिखती है:

  1. आप किसी तीसरे पक्ष की वेबसाइट पर "Google से साइन इन करें" दबाते हैं।
  2. साइट आपको Google सर्वर पर पुनर्निर्देशित करती है, जहां आप अपना पासवर्ड दर्ज करते हैं।
  3. Google पूछता है: "क्या आप इस साइट को अपने नाम और ईमेल तक पहुंच की अनुमति देते हैं?"
  4. आप "Allow" दबाते हैं।
  5. Google साइट को एक अस्थायी कोड जारी करता है और आपको वापस पुनर्निर्देशित करता है।
  6. साइट कोड को एक्सेस टोकन के लिए विनिमय करती है।
  7. साइट टोकन का उपयोग Google API से आपका डेटा अनुरोध करने के लिए करती है।

टोकन कैसे काम करते हैं, इसके बारे में सुरक्षा टोकन लेख में पढ़ें।

OAuth 2.0 के ग्रांट प्रकार

OAuth 2.0 कई प्राधिकरण प्रवाह (ग्रांट) का समर्थन करता है, जिन्हें अनुप्रयोग के प्रकार (वेब, मोबाइल, सर्वर) और विश्वास के स्तर के आधार पर चुना जाता है:

  • Authorization Code Grant: वेब और मोबाइल अनुप्रयोगों के लिए सबसे आम और सुरक्षित प्रवाह। क्लाइंट एक प्राधिकरण कोड प्राप्त करता है, जिसे वह फिर एक्सेस टोकन के लिए विनिमय करता है। कोड उपयोगकर्ता के ब्राउज़र के माध्यम से संचारित होता है, और टोकन — क्लाइंट सर्वर और प्राधिकरण सर्वर के बीच एक सुरक्षित चैनल के माध्यम से।
  • Implicit Grant (पदावनत): सिंगल-पेज अनुप्रयोगों (SPA) के लिए एक सरलीकृत प्रवाह, जहां टोकन सीधे ब्राउज़र को लौटाया जाता है। इसे कम सुरक्षित माना जाता है और आधुनिक व्यवहार में अनुशंसित नहीं है।
  • Resource Owner Password Credentials Grant: एक प्रवाह जहां उपयोगकर्ता अपना लॉगिन और पासवर्ड सीधे क्लाइंट को स्थानांतरित करता है। केवल विश्वसनीय अनुप्रयोगों के लिए उपयोग किया जाता है (उदाहरण के लिए, बैंकों के आधिकारिक मोबाइल अनुप्रयोग)। एक उच्च-जोखिम विधि।
  • Client Credentials Grant: सर्वर-से-सर्वर बातचीत के लिए उपयोग किया जाता है जहां कोई उपयोगकर्ता नहीं होता। क्लाइंट अपने क्रेडेंशियल (क्लाइंट आईडी और क्लाइंट सीक्रेट) के साथ प्रमाणित होता है और संरक्षित संसाधनों तक पहुंच के लिए टोकन प्राप्त करता है।

सही ग्रांट चुनना अनुप्रयोग सुरक्षा डिज़ाइन करने में एक अत्यंत महत्वपूर्ण कदम है। गलत चुनाव कमजोरियों और डेटा समझौते का कारण बन सकता है।

OAuth 1.0 और OAuth 2.0 की तुलना

OAuth 2.0 प्रोटोकॉल का एक आधुनिक संस्करण है जिसने OAuth 1.0 की जगह ली। मुख्य अंतर:

  • सरलता: OAuth 2.0 डेवलपर्स के लिए काफी सरल है। अनुरोधों पर हस्ताक्षर करने के लिए जटिल क्रिप्टोग्राफी की आवश्यकता नहीं होती (OAuth 1.0 में आपको प्रत्येक अनुरोध के लिए एक डिजिटल हस्ताक्षर उत्पन्न करना होता था)।
  • लचीलापन: OAuth 2.0 विभिन्न उपयोग परिदृश्यों का समर्थन करता है: वेब अनुप्रयोग, मोबाइल अनुप्रयोग, बिना ब्राउज़र वाले डिवाइस (IoT), सर्वर-से-सर्वर बातचीत।
  • टोकन: OAuth 2.0 एक्सेस टोकन और रिफ्रेश टोकन का उपयोग करता है, जो उपयोगकर्ता के क्रेडेंशियल को फिर से दर्ज किए बिना पहुंच बढ़ाने की अनुमति देता है।
  • सुरक्षा: OAuth 2.0 टोकन की सुरक्षा के लिए HTTPS संचरण का समर्थन करता है और सुरक्षा के लिए TLS पर अधिक निर्भर करता है।

आज OAuth 2.0 इंटरनेट पर प्राधिकरण के लिए वास्तविक मानक है। इसे Google, Facebook, GitHub, Microsoft, Yandex और हजारों अन्य सेवाओं द्वारा उपयोग किया जाता है। OAuth API के साथ कैसे एकीकृत होता है, इसके बारे में इंफ्रास्ट्रक्चर लेख में पढ़ें।

OAuth 2.0 ग्रांट प्रकार: एक्सेस टोकन, इम्प्लिसिट, पासवर्ड, क्लाइंट क्रेडेंशियल्स OAuth 2.0 ग्रांट प्रकारों का आरेख, उपयोग-मामले के परिदृश्यों के साथ: वेब ऐप, मोबाइल ऐप, सर्वर-टू-सर्वर, विश्वसनीय एप्लिकेशन। OAuth 2.0 ग्रांट प्रकार अपने ऐप प्रकार के लिए प्राधिकरण प्रवाह चुनना OAuth 2.0 📝 एक्सेस टोकन सबसे सुरक्षित प्रवाह वेब ऐप · मोबाइल ऐप ⚡ इम्प्लिसिट सरलीकृत (अनुशंसित नहीं) SPA (सिंगल पेज एप्लिकेशन) 🔑 पासवर्ड लॉगिन/पासवर्ड स्थानांतरण विश्वसनीय एप्लिकेशन (बैंक) 🤖 क्लाइंट क्रेडेंशियल्स सर्वर-टू-सर्वर मशीन-टू-मशीन (M2M) सही ग्रांट चुनाव = ऐप सुरक्षा
OAuth — आरेख 2

OAuth सुरक्षा

इस तथ्य के बावजूद कि OAuth एक सुरक्षित प्रोटोकॉल है, कुछ जोखिम हैं जिन्हें उपयोग करते समय ध्यान में रखना महत्वपूर्ण है:

  • टोकन इंटरसेप्शन: यदि हमलावर एक्सेस टोकन को इंटरसेप्ट करता है (उदाहरण के लिए, असुरक्षित कनेक्शन या Man-in-the-Middle हमले के माध्यम से), तो वह इसके समाप्त होने से पहले इसका उपयोग कर सकता है। HTTPS का उपयोग अनिवार्य है।
  • फ़िशिंग: हमलावर क्रेडेंशियल चुराने के लिए प्राधिकरण सर्वर की नकल करने वाले नकली लॉगिन पेज बना सकते हैं। पासवर्ड दर्ज करने से पहले हमेशा URL की जांच करना महत्वपूर्ण है।
  • CSRF हमले (Cross-Site Request Forgery): ऐसे हमले जिनमें हमलावर उपयोगकर्ता को उस साइट पर अवांछित क्रियाएं करने के लिए मजबूर करता है जहां वह प्राधिकृत है। इनसे बचाव के लिए, OAuth अनुरोधों में state पैरामीटर का उपयोग किया जाता है।
  • क्लाइंट सीक्रेट समझौता: यदि हमलावर क्लाइंट सीक्रेट (अनुप्रयोग की गुप्त कुंजी) प्राप्त कर लेता है, तो वह एक वैध अनुप्रयोग के रूप में प्रस्तुत हो सकता है। क्लाइंट सीक्रेट को सुरक्षित स्थान पर संग्रहीत करें।

सुरक्षा बढ़ाने के लिए, एक्सेस टोकनों के लिए छोटी जीवनकाल (उदाहरण के लिए, 1 घंटा) और पासवर्ड को फिर से दर्ज किए बिना सत्र बढ़ाने के लिए रिफ्रेश टोकन का उपयोग करने की अनुशंसा की जाती है। मोबाइल अनुप्रयोगों में प्राधिकरण कोड के इंटरसेप्शन से बचाव के लिए PKCE (Proof Key for Code Exchange) का उपयोग करना भी महत्वपूर्ण है।

स्रोत: OAuth on Wikipedia

अक्सर पूछे जाने वाले प्रश्न

सरल शब्दों में OAuth क्या है?

OAuth नया लॉगिन और पासवर्ड बनाए बिना वेबसाइट में लॉग इन करने का एक तरीका है। आप "Google से साइन इन करें" या "VKontakte से साइन इन करें" दबाते हैं, अनुमति देते हैं, और साइट को केवल वही मिलता है जो आपने अनुमति दी (उदाहरण के लिए, आपका नाम और ईमेल)। आपका पासवर्ड कभी भी साइट पर स्थानांतरित नहीं होता। यह पूरे अपार्टमेंट की चाबियां सौंपने के बजाय सीमित अधिकारों वाला एक डिजिटल पास जैसा है। डेटा सुरक्षा के बारे में सूचना सुरक्षा लेख में पढ़ें।

OAuth 2.0 कैसे काम करता है?

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

OAuth 1.0, OAuth 2.0 से कैसे भिन्न है?

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

सिर्फ पासवर्ड स्थानांतरित करने के बजाय OAuth की आवश्यकता क्यों है?

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

क्या OAuth सुरक्षित है और क्या जोखिम हैं?

सही उपयोग पर OAuth को सुरक्षित माना जाता है। टोकन एक सुरक्षित चैनल (HTTPS) के माध्यम से संचारित होते हैं, उनकी सीमित वैधता अवधि और अधिकारों का सीमित दायरा होता है। हालांकि, जोखिम हैं: टोकन इंटरसेप्शन (MITM हमला), फ़िशिंग (नकली लॉगिन पेज), CSRF हमले और क्लाइंट सीक्रेट समझौता। अपनी सुरक्षा के लिए, HTTPS, छोटे टोकन जीवनकाल, CSRF से बचाव के लिए state पैरामीटर और मोबाइल अनुप्रयोगों के लिए PKCE का उपयोग करें।

OAuth कहां उपयोग होता है और कौन सी कंपनियां इसका उपयोग करती हैं?

OAuth लगभग सभी आधुनिक वेब और मोबाइल अनुप्रयोगों में उपयोग होता है। "Google से साइन इन करें", "Facebook से साइन इन करें", "Yandex से साइन इन करें", "VKontakte से साइन इन करें" बटन — ये सभी OAuth हैं। OAuth का उपयोग सेवाओं के बीच डेटा विनिमय के लिए API में (उदाहरण के लिए, ईमेल सेवाओं के साथ CRM एकीकरण), कॉर्पोरेट प्रणालियों में सिंगल साइन-ऑन (SSO) के लिए और IoT डिवाइसों में किया जाता है। इसका उपयोग Google, Facebook, GitHub, Microsoft, Yandex, VKontakte और हजारों अन्य सेवाएँ करती हैं। API सेट अप करने के बारे में इंफ्रास्ट्रक्चर लेख में पढ़ें।

OAuth और सिंगल साइन-ऑन (SSO) में क्या अंतर है?

OAuth एक प्राधिकरण प्रोटोकॉल है (आपके डेटा के साथ क्या करने की अनुमति है), जबकि SSO (Single Sign-On) प्रमाणीकरण के लिए एक समाधान है (आप कौन हैं)। SSO आपको एक बार सिस्टम में लॉग इन करने और बिना पासवर्ड फिर से दर्ज किए सभी अनुप्रयोगों तक पहुंच प्राप्त करने की अनुमति देता है। OAuth का उपयोग SSO समाधान के हिस्से के रूप में किया जा सकता है, लेकिन ये अलग-अलग अवधारणाएं हैं। SSO अक्सर SAML या OpenID Connect प्रोटोकॉल पर बनाया जाता है (जो प्रमाणीकरण के लिए OAuth 2.0 का उपयोग करता है)। OAuth डेटा तक पहुंच देता है, SSO कई प्रणालियों में लॉगिन को सरल बनाता है।

«सूचना सुरक्षा» में अन्य शर्तें

क्या यह जानकारी उपयोगी थी?

सूचना सुरक्षा वापस

OAuth

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

आज ही अपने नेटवर्क की सुरक्षा करें

एक अनुरोध छोड़ें — हमारे सूचना सुरक्षा विशेषज्ञ आपको oauth का चयन, कॉन्फ़िगरेशन और अपनी अवसंरचना में एकीकरण करने में मदद करेंगे। हम आपके डेटा को खतरों से सुरक्षित रखेंगे।

गारंटीशुदा परिणाम
आपके बजट के लिए चयन
व्यापक दृष्टिकोण
प्रमाणित विशेषज्ञ

या हमसे संपर्क करें:

+7 (499) 238-01-32 sales@fintech.ru

सुबह 9:00 बजे से शाम 6:00 बजे तक खुला