Skip to main content

OAuth 1.0a

X डेवलपर प्लेटफ़ॉर्म पर कई एंडपॉइंट, किसी X खाते की ओर से कार्रवाई करने या API अनुरोध भेजने के लिए OAuth 1.0a विधि का उपयोग करते हैं। उदाहरण के लिए, यदि आपके पास X डेवलपर ऐप है, तो आप किसी भी X खाते की ओर से API अनुरोध कर सकते हैं, बशर्ते वह उपयोगकर्ता आपके ऐप को प्रमाणित करे। कृपया ध्यान दें: यदि आप HMAC-SHA1 और percent encoding जैसी अवधारणाओं से परिचित नहीं हैं, तो हम अनुशंसा करते हैं कि आप नीचे दिए गए “उपयोगी टूल” अनुभाग को देखें, जिसमें कुछ API क्लाइंट सूचीबद्ध हैं जो प्रमाणीकरण प्रक्रिया को काफी सरल बना देते हैं।

मुख्य अवधारणाएँ

कुंजियों और टोकन के साथ अनुरोध पर हस्ताक्षर करना

आपको authorization header में जनरेट की गई कई कुंजियाँ और टोकन भेजकर हर API अनुरोध पर हस्ताक्षर करना होता है। शुरू करने के लिए, आप अपने X डेवलपर ऐप के विवरण पेज पर कई कुंजियाँ और टोकन जनरेट कर सकते हैं, जिनमें निम्नलिखित शामिल हैं:

उपयोगकर्ताओं की ओर से अनुरोध करना

सिग्नेचर बनाते समय, आपको एक्सेस टोकन के ऐसे सेट की ज़रूरत होती है जो उस उपयोगकर्ता का प्रतिनिधित्व करता हो, जिसकी ओर से आप अनुरोध करने वाले हैं। आप उस X खाते का प्रतिनिधित्व करने वाले एक्सेस टोकन का एक सेट ऐप के विवरण पेज, से जनरेट कर सकते हैं जो X डेवलपर ऐप का मालिक है। लेकिन अगर आप किसी दूसरे X खाते की ओर से अनुरोध करना चाहते हैं, तो उस खाते के मालिक को 3-legged OAuth flow के हिस्से के रूप में अपने खाते में साइन इन करके आपको एक्सेस देना होगा। इस प्रक्रिया के परिणामस्वरूप एक्सेस टोकन (oauth_token and oauth_token_secret) का एक सेट मिलता है, जिसका उपयोग OAuth 1.0a अनुरोध करने के लिए किया जा सकता है। जब आपके पास ये कुंजी और tokens हों, तो आप या तो शुरू से सिग्नेचर बना सकते हैं। हम ऐसा करने की अनुशंसा नहीं करते, जब तक कि आपको ठीक-ठीक न पता हो कि आप क्या कर रहे हैं, या आप नीचे बताए गए किसी टूल का उपयोग ऐसे endpoint पर अनुरोध करने के लिए न कर रहे हों, जिसके लिए OAuth 1.0a आवश्यक है। संदर्भ के लिए, यहां authorization header में पास किए गए सभी जनरेट किए गए tokens के साथ signed cURL request का एक उदाहरण दिया गया है:
नोट: उपयोगकर्ता एक्सेस टोकन संवेदनशील होते हैं और इन्हें बहुत सावधानी से सुरक्षित रखा जाना चाहिए। जब एक्सेस टोकन जनरेट किए जाते हैं, तो जिस उपयोगकर्ता का वे प्रतिनिधित्व करते हैं, वह इस भरोसे के साथ आपकी ऐप को सौंपे गए इन token के सुरक्षित रहने की अपेक्षा करता है। यदि API कुंजी और उपयोगकर्ता एक्सेस टोकन, दोनों की सुरक्षा से समझौता हो जाता है, तो आपकी ऐप के माध्यम से निजी जानकारी और खाते की सुविधाओं तक पहुंच उजागर हो सकती है। हम आपको कुंजी और एक्सेस टोकन को सुरक्षित रखने के बारे में और जानने के लिए प्रोत्साहित करते हैं।

उपयोगी टूल

किसी अनुरोध पर हस्ताक्षर करने की प्रक्रिया जटिल है। हम सलाह देते हैं कि आप ऐसी API क्लाइंट लाइब्रेरी का उपयोग करें, जो प्रमाणीकरण टोकन का बड़ा हिस्सा अपने-आप जनरेट कर दे: