नीति क्या है?

Apigee Edge दस्तावेज़ देखा जा रहा है.
Apigee X दस्तावेज़ पर जाएं.
जानकारी

Apigee Edge, आपको 'नीतियों' का इस्तेमाल करके, कोई भी कोड लिखे बिना एपीआई के काम करने के तरीके को 'प्रोग्राम' करने की सुविधा देता है. नीति एक मॉड्यूल की तरह होती है, जो एक खास, सीमित मैनेजमेंट फ़ंक्शन को लागू करती है. नीतियों को इस तरह से डिज़ाइन किया गया है कि आप एपीआई में आम तौर पर मिलने वाली मैनेजमेंट से जुड़ी क्षमताओं को आसानी और भरोसेमंद तरीके से जोड़ सकें. नीतियों में सुरक्षा, दर को सीमित करना, ट्रांसफ़ॉर्मेशन, और मीडिएशन की सुविधाएं दी जाती हैं. इससे आपको कोड करने की ज़रूरत नहीं होती और खुद ही इस फ़ंक्शन का रखरखाव नहीं करना पड़ता.

Apigee Edge की ओर से दी गई नीति के टाइप के साथ-साथ कई और काम भी किए जा सकते हैं. आपके पास JavaScript और Node.js ऐप्लिकेशन जैसे कस्टम स्क्रिप्ट और कोड लिखने का भी विकल्प है. इनकी मदद से, एपीआई प्रॉक्सी की सुविधा को बढ़ाया जा सकता है. साथ ही, आपको Apigee की नीतियों के साथ काम करने वाली बुनियादी मैनेजमेंट सुविधाओं से जुड़ी कुछ नई सुविधाएं आज़माने का मौका मिल सकता है.

नीति अटैचमेंट और नीति उल्लंघन ठीक करने के तरीके (एनफ़ोर्समेंट) के बारे में जानने के लिए यह वीडियो देखें.

पॉलिसी टाइप

तकनीकी रूप से, नीति एक एक्सएमएल फ़ॉर्मैट वाली कॉन्फ़िगरेशन फ़ाइल होती है. हर नीति के स्ट्रक्चर (जैसे कि ज़रूरी और वैकल्पिक कॉन्फ़िगरेशन एलिमेंट) को एक्सएमएल स्कीमा से तय किया जाता है. अगर आपको एक्सएमएल टूल के बारे में जानकारी है, तो GitHub पर एपीआई प्लैटफ़ॉर्म के सैंपल में, नीति से जुड़े स्कीमा के बारे में जानें.

Edge की नीति के टाइप को नीचे दी गई फ़ंक्शनल कैटगरी में बांटा गया है:

ट्रैफ़िक मैनेजमेंट

ट्रैफ़िक मैनेजमेंट की कैटगरी में मौजूद नीतियों की मदद से, एपीआई प्रॉक्सी की मदद से अनुरोध और रिस्पॉन्स मैसेज के फ़्लो को कंट्रोल किया जा सकता है. ये नीतियां ऑपरेशनल और कारोबार, दोनों के लेवल पर कंट्रोल करने की सुविधा देती हैं. इनसे आपको रॉ डेटा सोर्स पर कंट्रोल मिलता है. साथ ही, ये हर ऐप्लिकेशन के हिसाब से ट्रैफ़िक को भी कंट्रोल कर सकते हैं. ट्रैफ़िक मैनेजमेंट से जुड़ी अलग-अलग तरह की नीतियां, आपको कोटा लागू करने में मदद करती हैं. साथ ही, इनसे सेवा को अस्वीकार किए जाने के हमलों को कम करने में भी मदद मिलती है.

सुरक्षा

सुरक्षा श्रेणी की नीतियां पुष्टि करने, अनुमति देने, और कॉन्टेंट पर आधारित सुरक्षा की सुविधा देती हैं.

मध्‍यस्‍थता

मीडिएशन कैटगरी की नीतियों की मदद से, एपीआई प्रॉक्सी से भेजे जाने वाले मैसेज में लगातार बदलाव किया जा सकता है. इनकी मदद से, मैसेज के फ़ॉर्मैट को एक्सएमएल से JSON और एक्सएमएल से JSON में बदला जा सकता है. इसके अलावा, किसी एक्सएमएल फ़ॉर्मैट को दूसरे एक्सएमएल फ़ॉर्मैट में भी बदला जा सकता है. इससे आपको मैसेज पार्स करने, नए मैसेज जनरेट करने, और आउटबाउंड मैसेज की वैल्यू बदलने की सुविधा भी मिलती है. मीडिएशन नीतियां, एपीआई सेवाओं की मदद से दिखाई जाने वाली बुनियादी सेवाओं के साथ भी इंटरैक्ट करती हैं. इससे, आपको रनटाइम के दौरान ऐप्लिकेशन, डेवलपर, सुरक्षा टोकन, और एपीआई प्रॉडक्ट का डेटा हासिल करने में मदद मिलती है.

एक्सटेंशन

एक्सटेंशन कैटगरी में मौजूद नीतियों की मदद से, अपनी पसंद की प्रोग्रामिंग भाषा में कस्टम व्यवहार लागू करने के लिए, API सेवाएं लागू की जा सकती हैं.

नीति के रेफ़रंस की खास जानकारी में, हर नीति के टाइप के बारे में पूरी जानकारी दी गई है. इस विषय में इंटरैक्शन के बारे में जानकारी दी गई है. इसमें आपको नीतियां बनाने और उन्हें एपीआई प्रॉक्सी कॉन्फ़िगरेशन के फ़्लो में अटैच करने के तरीके के बारे में बताया गया है.

नीति में बदलाव लागू करना

नीति से जुड़े बदलाव लागू करने के लिए, आपको किसी एनवायरमेंट में एपीआई प्रॉक्सी रिविज़न को डिप्लॉय करना होगा. कोई नीति अटैच करने या किसी मौजूदा नीति में बदलाव करने के बाद, बदलावों को लागू करने के लिए मैनेजमेंट यूज़र इंटरफ़ेस (यूआई) या मैनेजमेंट एपीआई का इस्तेमाल करें.

नीति उल्लंघन ठीक करने के तरीके (एनफ़ोर्समेंट) की पुष्टि करना

यह पुष्टि करने के लिए कि नीति सही तरीके से लागू की गई है या नहीं, एपीआई को किसी एचटीटीपी क्लाइंट से शुरू करना ज़रूरी है. इस कोटा कॉन्फ़िगरेशन की पुष्टि करने के लिए, एपीआई को कई अनुरोध सबमिट करें. ये अनुरोध, कोटा नीति में तय की गई सीमा के बाद किए जाते हैं. (यहां दिए गए अनुरोध के मुताबिक, यूआरआई पाथ को प्रॉक्सीEndpoint में बुनियादी पाथ सेटिंग के तौर पर कॉन्फ़िगर किया गया है. यह /weather है).

http://{org_name}-test.apigee.net/weather/forecastrss?w=12797282

एक मिनट के अंदर एक से ज़्यादा अनुरोध सबमिट करने के बाद, आपको गड़बड़ी का यह मैसेज दिखेगा:

{  
   "fault":{  
      "faultstring":"policies.ratelimit.QuotaViolation",
      "detail":{  
         "errorcode":"policies.ratelimit.QuotaViolation"
      }
   }
}

इससे पता चलता है कि एपीआई सेवाएं, कोटा नीति को लागू कर रही हैं.

नीति के आधार पर हुई गड़बड़ी को ठीक करना

ऊपर दिए गए गड़बड़ी के मैसेज का फ़ॉर्मैट ध्यान में रखें. इसमें faultstring और errorcode प्रॉपर्टी शामिल है. कई मामलों में, आपको इन गड़बड़ियों को ठीक करने के लिए, कुछ कार्रवाइयां करनी होंगी. उदाहरण के लिए, आप उस डेवलपर को पसंद के मुताबिक मैसेज भेज सकते हैं जिसके ऐप्लिकेशन की तय सीमा पार हो गई है.

गड़बड़ी ठीक करने के बारे में ज़्यादा जानकारी के लिए, गड़बड़ियां ठीक करना लेख देखें.

सबसे सही तरीके: सामान्य नीति के सेट

मैनेजमेंट की बुनियादी शर्तों को पूरा करने के लिए, एपीआई प्रॉक्सी आम तौर पर इन नीतियों को लागू करते हैं:

एपीआई पासकोड की सामान्य पुष्टि करना

प्रॉक्सीEndpoint अनुरोध का फ़्लो:
  1. SpikeArrest
  2. XML XMLProtection या JSON स्टेजProtection
  3. एपीआई पासकोड की पुष्टि
  4. अनुरोध भेजने की तय सीमा (कोटा)
  5. ResponseCache
प्रॉक्सीEndpoint रिस्पॉन्स फ़्लो:
  1. ResponseCache

बुनियादी बदलाव: JSON से एक्सएमएल में

अनुरोध का तरीका:
  1. SpikeArrest
  2. JSONThreatProtection
  3. एपीआई पासकोड की पुष्टि
  4. अनुरोध भेजने की तय सीमा (कोटा)
  5. JSONToXML
रिस्पॉन्स फ़्लो:
  1. XMLToJSON
  2. ResponseCache