8

आरईएसटी स्पेस के अनुसार, सेवा को स्टेटलेस माना जाना चाहिए; लेकिन फिर प्रमाणीकरण को सक्षम करना मुश्किल हो जाता है। मैंने जो कुछ सामान पढ़ा है, उसने कहा है "आरईएसटी स्टेटफिंग बनाना दुनिया का अंत नहीं है"। लेकिन यह बात नहीं है, बिंदु spec का पालन करना और सुसंगत होना है।रीस्टफुल सेवा प्रमाणीकरण

तो, मैं इस सवाल को यहां उम्मीद कर रहा हूं कि कोई मुझे सही दिशा में मार्गदर्शन कर सके। मैं एक आरईएसटी सेवा बनाने के लिए स्प्रिंग एमवीसी के साथ काम कर रहा हूं। मेरे पास विचार नहीं हैं। यह एक वास्तविक आरईएसटी सेवा है जो जेएसओएन का उपभोग/उत्पादन करती है। मुझे इस एप्लिकेशन के लिए प्रमाणीकरण (और सड़क के नीचे प्राधिकरण) तंत्र की आवश्यकता है जो स्टेटलेस है और आरईएसटी विनिर्देश का पालन करता है। क्लाइंट जावास्क्रिप्ट (बैकबोन.जेएस, कॉफीस्क्रिप्ट) में लिखा जाएगा और उपयोगकर्ता से उपयोगकर्ता नाम/पासवर्ड स्वीकार करेगा। फिर यह उस जानकारी को सर्वर पर पोस्ट करेगा।

मैं स्प्रिंग आधारित एप्लिकेशन में सही स्टेटलेस प्रमाणीकरण (और प्राधिकरण) कैसे प्राप्त कर सकता हूं?

एसएसएल पर डाइजेस्ट प्रमाणीकरण - क्या यह जाने का तरीका है?

+1

यह "आरईएसटी स्पेक" क्या है जिसमें आप बोलते हैं? यह एक डिजाइन पैटर्न और दिशानिर्देशों का एक सेट है, एक विनिर्देश नहीं। – skaffman

उत्तर

2

सत्र प्रबंधन राज्य प्रबंधन से अलग है।

आप हैंडशेक के दौरान सर्वर पक्ष एक टोकन उत्पन्न कर सकते हैं और जब भी ग्राहक कॉल करता है तो उसे उस टोकन को या तो सिर में जोड़ना होगा या अन्यथा जहां आपका सर्वर विश्लेषण करने और निर्णय लेने में सक्षम होगा कि आप अनुमति दे सकते हैं या नहीं जारी रखने के लिए कॉल करें।

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

+0

और सर्वर सर्वर पर आप इसे कैसे प्राप्त कर सकते हैं? –

+0

लेकिन फिर यदि एल्गोरिदम किसी भी तरह से क्रैक किया गया है, तो किसी भी टोकन को संसाधनों तक पहुंचने के लिए भेजा जा सकता है – jsf

+0

आपको उस टोकन को भी एन्क्रिप्ट करना चाहिए जिसे इसे आसानी से धोया या नमकीन हैश हो सकता है;) (मूल रूप से हैश का हैश) और यही वह जगह है जहां वे शून्य दिन की सुरक्षा करते हैं इसमें शामिल है लेकिन यदि आप एक मानक एन्क्रिप्शन एल्गोरिदम का उपयोग कर रहे हैं और कोई इसे क्रैक करता है तो उद्योग के लिए आपके स्वयं के आवेदन से अधिक समस्या है। एसएसएल का उपयोग करना सुनिश्चित करेगा कि पैकेट अनचाहे हो जाएंगे लेकिन एसएसएल का उपयोग करना जरूरी नहीं है। हमने एफबीआई, जेबॉस और सोनी आदि को समझौता किया है, इसलिए हाँ यह असंभव नहीं है लेकिन मानक अच्छे प्रथाओं का उपयोग करके यह सुनिश्चित होगा कि औसत जो इसमें शामिल नहीं हो सकता है। – Shahzeb

2

क्या आपने देखा है कि वसंत सुरक्षा कैसे काम करती है? वसंत सुरक्षा का उपयोग करना मैं आरईएसटी अनुरोध में ग्राहक से कस्टम HTTP प्राधिकरण शीर्षलेख जोड़ने में सक्षम हूं। यह सर्वर पक्ष निकाला जाता है, अनुरोध करने वाला उपयोगकर्ता प्रमाणीकृत है, और विशिष्ट संसाधनों तक पहुंच अधिकृत करना संभव है।

1

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

सर्वर की तरफ, स्प्रिंग सिक्योरिटी का उपयोग करें क्योंकि इससे इन सभी चीजों को संभालना बहुत आसान हो जाता है। यह स्प्रिंग एमवीसी के साथ अच्छी तरह से काम करता है।

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