API नीतियाँ लागू करना

Azure API Management

Fiodar Sazanavets

Senior Software Engineer at Microsoft

API नीतियों का परिचय

API मैनेजमेंट नीतियाँ

  • बाउंसर जैसा: कौन अंदर आए, जाँचें
  • स्पीड-लिमिट साइन जैसा: ट्रैफिक कंट्रोल करें
  • मुसीबत खड़ी करने वालों को ब्लॉक कर APIs को सुरक्षित रखें
  • रिक्वेस्ट थ्रॉटल करें ताकि कोई सिस्टम न दबा दे
  • API Gateway में आने-जाने सब कुछ नीतियों से नियंत्रित होता है
Azure API Management

API मैनेजमेंट नीतियों का ओवरव्यू

APIM नीतियाँ

  • नीतियाँ सरल XML में लिखे शक्तिशाली नियमों का सेट हैं
  • इन्हें एक request-and-response पाइपलाइन मानें
  • अलग चरणों पर नियम लगाकर ट्रैफिक को आकार दें
  • सबसे बढ़िया: आपके बैकएंड कोड को छूने की ज़रूरत नहीं
Azure API Management

उदाहरण: बैकवर्ड कम्पैटिबिलिटी

APIM के जरिए बैकवर्ड कम्पैटिबिलिटी

Azure API Management

नीति scopes

  • नीतियाँ ग्लोबल और संगठन-स्तर की हो सकती हैं
    • ये नियम सभी APIs को नियंत्रित करते हैं
  • व्यक्तिगत APIs पर लागू हो सकती हैं
    • किसी विशेष प्रोडक्ट को मैनेज करने देती हैं
  • व्यक्तिगत endpoints पर लागू हो सकती हैं
    • सूक्ष्म स्तर का कंट्रोल देती हैं

नीति scopes

Azure API Management

Inbound नीतियाँ

  • रिक्वेस्ट आते ही, APIM पहले inbound policies का मूल्यांकन करता है
  • उदाहरण: payload डेटा बढ़ाकर पुरानी ऐप वर्ज़न को नए APIs संग कम्पैटिबल बनाना
  • Inbound नीतियाँ दुर्भावनापूर्ण प्रयासों से बचाव करती हैं
  • वे malformed रिक्वेस्ट या missing डेटा पकड़ती हैं
  • यह शुरुआती सुरक्षा गार्डrail खराब डेटा को सेवाओं तक जाने से रोकता है

इनबाउंड डेटा औगमेंटेशन

रिक्वेस्ट वैलिडेशन

Azure API Management

सुरक्षा और थ्रॉटलिंग

सुरक्षा हेतु इनबाउंड नीति

रिक्वेस्ट कोटा लागू करना

  • ये अत्यधिक क्लाइंट्स को थ्रॉटल करती हैं, निष्पक्ष उपयोग और बैकएंड सुरक्षा सुनिश्चित करती हैं
  • Inbound नीतियाँ सुरक्षा के लिए भी ज़िम्मेदार हैं
  • आम नीति: एक JWT (JSON Web Token) को validate करना
  • JWT को क्लाइंट द्वारा भेजा डिजिटल आईडी कार्ड मानें
  • validate-jwt नीति जाँचती है कि यह वैध, अनएक्सपायर्ड और भरोसेमंद issuer (जैसे Entra ID) से है या नहीं
  • और सख्त नियंत्रण के लिए: rate-limiting और quota नीतियाँ
Azure API Management

Outbound नीतियाँ

  • बैकएंड प्रोसेसिंग के बाद, outbound नीतियाँ जवाब लौटाने से पहले उन्हें समायोजित करती हैं
  • रेस्तरां ऑर्डर जैसा सोचें: request -> किचन (बैकएंड) -> plating स्टेशन (outbound नीतियाँ)
  • Outbound नीतियाँ कर सकती हैं:
    • अनचाहे हिस्से हटाना (जैसे, sensitive headers)
    • निर्देश जोड़ना (जैसे, caching directives)
    • फ़ॉर्मेट बदलना (जैसे, XML से JSON)

रिस्पॉन्स डेटा औगमेंटेशन

रिस्पॉन्स ट्रांसफॉर्मेशन

  • रिस्पॉन्स, बैकएंड ने जैसा भी तैयार किया हो, क्लाइंट अपेक्षाएँ पूरी करते हैं
Azure API Management

अभ्यास करते हैं!

Azure API Management

Preparing Video For Download...