Azure APIM गेटवे का उपयोग करके API के लिए एकाधिक प्राधिकरण प्रकारों का समर्थन कैसे करें

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

परंपरागत रूप से, हम एकाधिक प्राधिकरण के समर्थन का उपयोग कर सकते हैं यदि ... कस्टम हेडर के आधार पर अनुरोध को मान्य करने के लिए ब्लॉक करता है, बाद में दावों को सत्यापित करने के लिए पहुंच टोकन उत्पन्न करता है। यह बहुत अधिक काम की तरह दिखता है जो किसी और को एपीआई के लिए करना चाहिए। हमें लगता है कि अगर वहाँ एपीआई के बहुत सारे हैं जो अधिक संभावना है। क्या हम ऐसा ही जोड़ना चाहेंगे, यदि प्रत्येक API में और ब्लॉक हों? नहीं, कोई बड़ा नहीं।

एपीआईएम पॉलिसी का लाभ उठाते हुए एपीआई से सत्यापन का अनुरोध करने दें।

Azure APIM के अनुरोध को मान्य करने के प्रमुख कदम हैं-

  1. अनुरोध शीर्षक मान के आधार पर प्राधिकरण प्रकार की पहचान करें -

Azure APIM नीति को विभिन्न स्तर जैसे सेवा स्तर या संचालन स्तर पर लागू किया जा सकता है। Azure APIM नीति में, हम आने वाले अनुरोध के लिए प्राधिकरण प्रकार की पहचान कर सकते हैं। एक्सेस टोकन प्राप्त करने के लिए प्राधिकरण सर्वर (OAuth 2.0) को अनुरोध भेजें।

2. AAD जारीकर्ता या विंडोज़ लाइव ID जारीकर्ता के साथ अनुरोध को मान्य करें -

प्राधिकृत सर्वर पहुँच टोकन के लिए अनुरोध को मान्य या अस्वीकार करता है।

3. पहुंच टोकन जनरेट करें और इसे API में अग्रेषित करें-

Azure APIM रिसोर्स प्राप्त करने के लिए एपीआई के मान्य एक्सेस टोकन के साथ अनुरोध भेजता है। एपीआई दावे की पुष्टि करता है और सफल सत्यापन पर यह संसाधन प्रदान करता है।

गेटवे, प्राधिकरण सर्वर और एपीआई के लिए उच्च स्तरीय अनुरोध प्रतिक्रिया

ऐसे अन्य परिदृश्य हैं जहां एपीआई के बजाय गेटवे द्वारा अनुरोध किया जा सकता है। उदाहरण के लिए, अनधिकृत अनुरोध को एपीआई एंडपॉइंट पर उतरने से रोका जा सकता है और सेवा में अनावश्यक हिट को कम करने में मदद कर सकता है या आने वाले अनुरोधों के थ्रॉटलिंग को सक्षम कर सकता है।

मैं अगली कहानी में इसी तरह के परिदृश्य को कवर करूँगा।

धन्यवाद।