scala - Akka-http का उपयोग करके OAuth2 प्रमाणीकरण करने का सबसे अच्छा तरीका क्या है?



oauth-2.0 spray (1)

मुझे लगता है कि सबसे बड़ी समस्या यह है कि OAuth2 स्वयं वास्तव में आपको नहीं बताता कि कार्यान्वयन के विवरण कैसे दिखते हैं।

आरएफसी का उद्धरण:

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

एक्सेस टोकन संसाधन सर्वर सुरक्षा आवश्यकताओं के आधार पर अलग-अलग स्वरूपों, संरचनाओं, और उपयोग की विधियों (उदाहरण के लिए, क्रिप्टोग्राफिक गुण) हो सकते हैं। प्रवेश टोकन विशेषताओं और संरक्षित संसाधनों का उपयोग करने के लिए इस्तेमाल की जाने वाली विधियां इस विनिर्देश के दायरे से परे हैं और साथी विनिर्देशों जैसे [आरएफसी 6750] द्वारा परिभाषित हैं

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

आपके OAuth2 प्रदाता पर निर्भर करता है कि कार्यान्वयन अलग-अलग हो सकता है, इसलिए मेरा अनुमान है कि यह रूपरेखा केवल आपको सामान्य बात प्रदान कर सकता है (आपके लिए टोकन निकालने) या उसे सभी संभव OAuth2 लागूकरण लागू करना होगा, जो इस बिंदु पर संभव नहीं लगता है।

मैंने व्यक्तिगत रूप से अतीत में पॉलिडीज्यू / जेवाटी-स्कला का इस्तेमाल किया है, जिसे आप एक नज़र रखना चाहते हैं।

आका एचटीटीपी और स्प्रे authenticateOAuth2 डायरेक्टिव प्रदान करते हैं, लेकिन उनके दस्तावेज बताते हैं कि

यह निर्देश पूर्ण OAuth2 प्रोटोकॉल को लागू नहीं करता, लेकिन इसके बजाय HTTP हेडर से आवश्यक टोकन निकालने से इसे कार्यान्वित करने में सक्षम बनाता है

मुझे कोई भी लाइब्रेरी नहीं मिल पाती है जो ओकाथ 2 को अक्का HTTP या स्प्रे के लिए लागू करती है I क्या ऐसा कुछ है जो मुझे याद आ रहा है, या क्या ये अभी इन पुस्तकालयों की अवस्था है?





akka-http