OAuth 2 में Bearer टोकन और token_type क्या हैं?


140

मैं OAuth 2 युक्ति से संसाधन स्वामी और पासवर्ड क्रेडेंशियल्स प्रवाह को लागू करने का प्रयास कर रहा हूं । मुझे उस token_typeमूल्य को समझने में परेशानी हो रही है जो मान्य प्रतिक्रिया के साथ वापस भेजा जाता है। कल्पना में सभी उदाहरण दिखाते हैं "token_type":"example"लेकिन कहते हैं कि यह होना चाहिए

टोकन की आवश्यकता है। धारा 7.1 में वर्णित अनुसार जारी किए गए टोकन का प्रकार । मान असंवेदनशील है।

क्या कोई मुझसे इसकी व्याख्या करेगा?

जवाबों:


158

token_typeएक्सेस टोकन जेनरेटर में एक प्राधिकार है जो प्राधिकरण सर्वर को कॉल करता है जो अनिवार्य रूप से यह दर्शाता है कि कैसे एक access_token उत्पन्न किया जाएगा और संसाधन एक्सेस कॉल के लिए प्रस्तुत किया जाएगा। आप ऑथराइज़ेशन सर्वर पर पहुँच टोकन कॉल में token_type प्रदान करते हैं।

यदि आप Bearer(अधिकांश कार्यान्वयन पर डिफ़ॉल्ट) देते हैं, तो एक access_tokenउत्पन्न होता है और आपको वापस भेजा जाता है। बियरर को केवल "इस टोकन के वाहक को पहुंच प्रदान करें" के रूप में समझा जा सकता है। एक वैध टोकन और कोई सवाल नहीं पूछा गया। दूसरी तरफ यदि आप चुनते हैं Macऔर sign_type( hmac-sha-1अधिकांश कार्यान्वयन पर डिफ़ॉल्ट ), एक्सेस टोकन को एक विशेषता के रूप में कुंजी प्रबंधक में गुप्त रखा जाता है और रखा जाता है, और एक एन्क्रिप्टेड रहस्य वापस भेजा जाता है।access_token

हाँ, आप अपने स्वयं के कार्यान्वयन का उपयोग कर सकते हैं token_type, लेकिन यह बहुत मायने नहीं रखता है क्योंकि डेवलपर्स को OAuth के मानक कार्यान्वयन के बजाय आपकी प्रक्रिया का पालन करने की आवश्यकता होगी।


28
मुझे लगता है "इस टोकन के वाहक को पहुंच प्रदान करें" यह समझने में आसान बनाता है। यह चेक जारी करने के बराबर है "चेक के वाहक को पैसा दें"।
NVM

@ एनवीएम सुझाव के लिए धन्यवाद, यह निश्चित रूप से समझ में आता है। मैंने वही अपडेट किया है।
अभिषेक त्यागी

33

कोई भी OAuth 2.0 एक्सटेंशन के रूप में "token_type" को परिभाषित कर सकता है, लेकिन वर्तमान में "वाहक" टोकन प्रकार सबसे आम है।

https://tools.ietf.org/html/rfc6750

असल में यही फेसबुक इस्तेमाल कर रहा है। उनका कार्यान्वयन हालांकि नवीनतम कल्पना से थोड़ा पीछे है।

यदि आप फेसबुक से अधिक सुरक्षित होना चाहते हैं (या OAuth 1.0 के रूप में सुरक्षित है जिसमें "हस्ताक्षर" है), तो आप "मैक" टोकन प्रकार का उपयोग कर सकते हैं।

हालांकि, यह कठिन तरीका होगा क्योंकि मैक कल्पना अभी भी तेजी से बदल रही है।

https://tools.ietf.org/html/draft-ietf-oauth-v2-http-mac-05


14

मोज़िला MDN हैडर जानकारी

बियरर टोकन
एक संपत्ति के साथ एक सुरक्षा टोकन जो टोकन के कब्जे में किसी भी पार्टी (एक "वाहक") किसी भी तरह से टोकन का उपयोग कर सकता है जो किसी अन्य पार्टी के कब्जे में हो सकता है। बेयरर टोकन का उपयोग करने के लिए क्रिप्टोग्राफ़िक कुंजी सामग्री (प्रूफ़-ऑफ़-कब्ज़ा) साबित करने के लिए एक वाहक की आवश्यकता नहीं होती है।

ऑथेंटिकेशन सर्वर द्वारा बियरर टोकन या रिफ्रेश टोकन आपके लिए बनाया गया है। जब कोई उपयोगकर्ता आपके एप्लिकेशन (क्लाइंट) को प्रमाणीकरण सर्वर को प्रमाणित करता है, तब जाता है और आपके बियरर टोकन (ताज़ा टोकन) के लिए जनरेट करता है, जिसे आप एक्सेस टोकन प्राप्त करने के लिए उपयोग कर सकते हैं।

बेयरर टोकन आमतौर पर प्रमाणीकरण सर्वर द्वारा बनाई गई किसी प्रकार का गुप्त मूल्य है, यह यादृच्छिक नहीं है यह उपयोगकर्ता द्वारा आपको एक्सेस देने और आपके एप्लिकेशन को एक्सेस प्राप्त करने वाले क्लाइंट के आधार पर बनाया गया है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.