7

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

मुझे बताया गया है कि ब्राउज़र में रीफ्रेश टोकन संग्रहीत करना गलत है क्योंकि यह असुरक्षित है।

मुझे लगता है कि यह ठीक है क्योंकि:

  • टोकन केवल Http में संग्रहीत किया जाएगा, सुरक्षित सत्र कुकीज़ ताकि वे मिडिल हमलों में XSS या आदमी की चपेट में नहीं होना चाहिए और वे जब उपयोगकर्ता को छोड़ दिया जाएगा अपने सत्र को बंद कर देता है।
  • सर्वर से सभी संचार HTTPS
  • संदिग्ध गतिविधि
  • सबसे महत्वपूर्ण बात आप ताज़ा टोकन का उपयोग नहीं कर सकते जब तक कि आप ग्राहक गुप्त जो केवल जाना जाएगा पता का पता चला है, तो ताज़ा टोकन अवैध जा सकता है के माध्यम से किया जाता है सर्वर द्वारा

क्या मुझे लगता है कि यह ठीक होना चाहिए? कृपया बताएं क्यों!

उत्तर

4

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

httpOnly और सुरक्षित कुकी में टोकन संग्रहीत करना इसे सत्र आईडी के बराबर बराबर बनाता है, और इसकी सुरक्षा भी इस संबंध में समान होगी (जाहिर है अन्य पहलू अलग हो सकते हैं)।

संबंधित मुद्दे