क्या Google टोकन को समाप्त करता है?


108

मैंने परीक्षण प्रयोजनों के लिए केवल थोड़े समय में कई बार ताज़ा टोकन का उपयोग किया है, लेकिन मुझे आश्चर्य है कि क्या Google ताज़ा टोकन कभी समाप्त हो जाते हैं? क्या मैं एक ही रिफ्रेश टोकन का उपयोग करने के लिए एक और एक्सेस टोकन बार-बार लंबी अवधि (एक सप्ताह या महीने) के लिए प्राप्त कर सकता हूं?


क्या आप रूबी का उपयोग कर रहे हैं, या क्या आपके पास उसके लिए कोड नमूना है?
तुफिर

जवाबों:


146

Google प्रामाणिक सर्वर ने रिफ्रेश टोकन जारी किए हैं, कभी समाप्त नहीं होंगे - यह ताज़ा टोकन का पूरा बिंदु है। जब उपयोगकर्ता आपके आवेदन तक पहुंच को फिर से ताज़ा कर देगा (या मुझे कहना चाहिए कि वह अनधिकृत हो जाएगा) समाप्त हो जाएगा।

इस डॉक्टर को देखें यह स्पष्ट रूप से ताज़ा टोकन के कार्य को बताता है।

एक लंबे समय तक चलने वाले टोकन (आमतौर पर एक वर्ष या असीमित जीवनकाल के लिए अच्छा) जारी करने के बजाय, सर्वर एक अल्पकालिक पहुंच टोकन और एक लंबे समय तक ताज़ा टोकन जारी कर सकता है। तो संक्षेप में आप बार-बार ताज़ा टोकन का उपयोग कर सकते हैं जब तक कि उपयोगकर्ता जो आपके एप्लिकेशन के एक्सेस रिव्यू को अधिकृत करता है।


6
"एक वर्ष के लिए अच्छा" भाग इसे उतना स्पष्ट नहीं बनाता जितना आप सुझाव देते हैं; लेकिन जब से यह व्यवहार में समस्या पैदा नहीं करता है, मैं मान रहा हूं कि ताज़ा टोकन सदाबहार है।
Mahemoff

54
टोकन समाप्ति आपको इस संभावना की आशंका के लिए अपना कोड लिखना चाहिए कि एक दिया गया टोकन अब काम नहीं कर सकता है। इनमें से किसी एक कारण से टोकन काम करना बंद कर सकता है: उपयोगकर्ता ने पहुंच रद्द कर दी है। छह महीने से टोकन का इस्तेमाल नहीं किया गया है। उपयोगकर्ता खाता टोकन अनुरोधों की एक निश्चित संख्या को पार कर गया है। वर्तमान में प्रति Google उपयोगकर्ता खाते में 25-टोकन सीमा है। यदि किसी उपयोगकर्ता खाते में 25 मान्य टोकन हैं, तो अगला प्रमाणीकरण अनुरोध सफल होता है, लेकिन चुपचाप बिना किसी उपयोगकर्ता-दृश्य चेतावनी के सबसे पुराने बकाया टोकन को अमान्य कर देता है। ( Developers.google.com/accounts/docs/OAuth2 से )
bazik

17
'लंबे समय तक जीवित' ताज़ा टोकन 'कभी समाप्त नहीं' की तुलना में कुछ अलग है।
कपे

1
यदि आपका ताज़ा टोकन अभी भी मान्य है तो आपका कोड कैसे चेक कर सकता है?
SsjCosty

3
@ शेडो यदि ताज़ा टोकन शायद ही कभी समाप्त होता है, जैसा कि सुझाव दिया गया है, तो Google पहले स्थान पर केवल गैर-निष्कासित एक्सेस टोकन जारी क्यों नहीं करता है। जहाँ तक, मैं समझता हूँ, एक्सेस टोकन जिसे oAuth 2.0 का उपयोग करके जारी किया गया है, तब एक ताज़ा टोकन का अनुरोध करने के लिए उपयोग किया जा सकता है। केवल एक स्थायी एक्सेस टोकन क्यों नहीं है, और ताज़ा टोकन के लिए अतिरिक्त कॉल काट दें।
चार्ल्स रॉबर्टसन

62

यह बहुत भ्रामक धागा है। पहला उत्तर सही प्रतीत होता है, लेकिन वास्तव में Google से आधिकारिक रूप से कुछ भी उद्धृत नहीं किया जाता है।

मुझे मिला सबसे निश्चित उत्तर वास्तव में डेवलपर के खेल के मैदान में है जहां आप टोकन प्राप्त करते हैं। चरण 2 में नीचे की ओर एक नोट है जो कहता है:

"नोट: OAuth खेल का मैदान ताज़ा टोकन स्टोर नहीं करता है, लेकिन ताज़ा टोकन कभी भी समाप्त नहीं होते हैं, उपयोगकर्ता को अपने Google खाता अधिकृत एक्सेस पृष्ठ पर जाना चाहिए अगर वे मैन्युअल रूप से उन्हें रद्द करना चाहते हैं।"

https://developers.google.com/oauthplayground/


2
यहाँ सबसे अच्छा जवाब - क्यों किसी ने उत्थान नहीं किया है, अविश्वसनीय है - बहुत धन्यवाद - ताज़ा टोकन का इलाज करें जैसे कि वे कभी समाप्त नहीं होते हैं - हालांकि साइनइन चेक पर एक नए के लिए उपयोगकर्ता द्वारा ताज़ा टोकन को रद्द करने पर, इस परिदृश्य में Google एक नया ताज़ा टोकन प्रदान करेगा
साइनइन

14

मुझे नहीं लगता कि यह पूरी तरह सच है:

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

इस पृष्ठ से: https://developers.google.com/youtube/v3/guides/authentication#installed-apps

यह youTube डॉक्स से है (जो मुझे अन्य एपीआई डॉक्स की तुलना में बहुत बेहतर लगता है) लेकिन मुझे लगता है कि यह सभी Google ऐप्स में समान है।


5

यह देखो:

ताज़ा टोकन मान्य हैं जब तक कि उपयोगकर्ता पहुंच को रद्द नहीं करता। यह फ़ील्ड केवल तभी मौजूद है यदि access_type = ऑफ़लाइन को प्राधिकरण कोड अनुरोध में शामिल किया गया है।

में https://developers.google.com/accounts/docs/OAuth2WebServer


5

2017 में कभी-कभी इस पर नियम बदल गए हैं, इसलिए मुझे लगता है कि सबसे अच्छा जवाब यह है कि यह उत्पाद पर निर्भर करता है। उदाहरण के लिए, Gmail API पर, Oauth 2.0 रिफ्रेश टोकन पासवर्ड बदलने पर समाप्त हो जाता है। यह देखें https://support.google.com/a/answer/6328616?hl=hi

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

शायद यूट्यूब के लिए, नक्शे, ताज़ा टोकन अभी भी वास्तव में लंबे समय तक जीवित है, लेकिन जीमेल एपीआई के लिए, एक छोटे टोकन पर भरोसा करें।


ऐसा लगता है कि यह 5 अक्टूबर, 2016 को आधिकारिक हो गया। Developers.googleblog.com/2016/09/09/…
TonyE

2

ताज़ा टोकन की मुख्य अवधारणा यह है कि यह लंबे समय तक चलने वाला है और कभी भी समाप्त नहीं होता है।

एक्सेस टोकन का समय समाप्त हो जाता है और यह समाप्त हो जाता है, एक बार यह समाप्त हो जाता है कि हम ताज़ा टोकन के लिए जा सकते हैं, जिसका उपयोग उपयोगकर्ता द्वारा अपने खाते से पुन: प्रकाशित होने तक बार-बार किया जाएगा।


0

इस पढ़ें: https://developers.google.com/identity/protocols/oauth2#expiration आप संभावना एक दी ताज़ा टोकन ताकत नहीं रह गया है कि काम की आशा के लिए अपने कोड लिखना चाहिए। एक ताज़ा टोकन इन कारणों में से एक के लिए काम करना बंद कर सकता है:

उपयोगकर्ता ने आपके ऐप की पहुंच रद्द कर दी है। छह महीने तक ताज़ा टोकन का उपयोग नहीं किया गया है। उपयोगकर्ता ने पासवर्ड बदल दिए और ताज़ा टोकन में जीमेल स्कोप हैं। उपयोगकर्ता खाते ने अधिकतम (लाइव) ताज़ा टोकन की संख्या को पार कर लिया है। वर्तमान में प्रति ग्राहक प्रति उपयोगकर्ता 50 ताज़ा टोकन की सीमा है। यदि सीमा समाप्त हो जाती है, तो एक नया ताज़ा टोकन बनाना स्वचालित रूप से बिना चेतावनी के सबसे पुराने ताज़ा टोकन को अमान्य कर देता है। यह सीमा सेवा खातों पर लागू नहीं होती है।

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


-2

मैंने कुछ और शोध किए हैं और ऐसा लगता है कि Google पहुंच टोकन का उपयोग पहले 'ऑफ़लाइन' अनुरोध के दौरान एक ताज़ा टोकन प्राप्त करने के लिए किया जाता है। इस बिंदु से, ताज़ा टोकन का उपयोग एक नया एक्सेस टोकन जारी करने के लिए किया जाता है। विचार यह है कि एक एक्सेस टोकन एक शॉर्ट टर्म टोकन है, लेकिन इसे लॉन्ग टर्म रिफ्रेश टोकन द्वारा नवीनीकृत किया जा सकता है। यह URL के 'कोड' वैरिएबल के लिए अनुरोध करने की आवश्यकता को हटाता है, जिसके लिए एक संदर्भ आधारित अनुरोध का उपयोग करते हुए दो समापन बिंदु दृष्टिकोण की आवश्यकता होती है और इसे शुरू करना पड़ता है:

http://www.jensbits.com/2012/01/09/google-api-offline-access-using-oauth-2-0-refresh-token/

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

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