ما هي السياسة؟

يتم الآن عرض مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
المعلومات

يتيح لك Apigee Edge "برمجة" سلوك واجهة برمجة التطبيقات بدون كتابة أي رمز، وذلك باستخدام "السياسات". السياسة تشبه الوحدة التي تنفذ وظيفة إدارة محددة ومحدودة. تم تصميم السياسات لتتيح لك إضافة أنواع شائعة من إمكانات الإدارة إلى واجهة برمجة التطبيقات بسهولة وموثوقية. توفّر السياسات ميزات مثل الأمان والحدّ من معدّل الزحف وإمكانيات التحويل والتوسّط، ما يوفّر عليك عناء الترميز وصيانة هذه الوظيفة بنفسك.

لا تقتصر على مجموعة أنواع السياسات التي توفّرها Apigee Edge. يمكنك أيضًا كتابة نصوص برمجية ورموز برمجية مخصصة (مثل تطبيقات JavaScript وNode.js)، التي تعمل على توسيع وظائف الخادم الوكيل لواجهة برمجة التطبيقات وتمكنك من الابتكار بالإضافة إلى إمكانات الإدارة الأساسية التي تتوافق مع سياسات Apigee.

شاهِد هذا الفيديو للحصول على مقدمة عن مرفق السياسة وتنفيذها.

أنواع السياسات

من الناحية الفنية، تكون السياسة ملف إعداد بتنسيق XML. يتم تحديد بنية كل نوع سياسة (على سبيل المثال، عناصر الضبط المطلوبة والاختيارية) من خلال مخطّط XML. إذا كنت تجيد أدوات XML، من المفيد أن تتعرّف على مخططات السياسات في نماذج النظام الأساسي لواجهة برمجة التطبيقات على جيت هب.

يتم تجميع أنواع سياسات Edge في الفئات الوظيفية التالية:

إدارة عدد الزيارات

تتيح لك السياسات في فئة إدارة الزيارات التحكّم في تدفق رسائل الطلبات والردّ من خلال خادم وكيل لواجهة برمجة التطبيقات. تتيح هذه السياسات إمكانية التحكّم على مستوى التشغيل وعلى مستوى الأنشطة التجارية. وتمنحك هذه الفلاتر إمكانية التحكم في سرعة معالجة البيانات الأولية، كما يمكنها أيضًا التحكّم في عدد الزيارات على أساس كل تطبيق. تتيح لك أنواع سياسات إدارة الزيارات فرض الحصص، وتساعدك أيضًا على الحد من هجمات رفض الخدمة.

الأمان

تتوافق السياسات في فئة الأمان مع المصادقة والتفويض بالإضافة إلى الأمان المستند إلى المحتوى.

الوساطة

تتيح لك السياسات في فئة التوسّط معالجة الرسائل بفعالية أثناء تدفقها من خلال الخوادم الوكيلة لواجهة برمجة التطبيقات. وهي تتيح لك تحويل تنسيقات الرسائل من XML إلى JSON (والعكس)، أو من تحويل تنسيق XML إلى تنسيق XML آخر. وتتيح لك أيضًا تحليل الرسائل وإنشاء رسائل جديدة وتغيير القيم في الرسائل الصادرة. تتفاعل سياسات التوسّط أيضًا مع الخدمات الأساسية التي تعرضها "خدمات واجهة برمجة التطبيقات"، ما يتيح لك استرداد بيانات حول التطبيقات ومطوّري البرامج والرموز المميّزة للأمان ومنتجات واجهة برمجة التطبيقات في وقت التشغيل.

الإضافة

تتيح لك السياسات الواردة في فئة الإضافات الاستفادة من قابلية التوسّع في خدمات واجهة برمجة التطبيقات لتنفيذ سلوك مخصّص في لغة البرمجة التي تختارها.

يتم توثيق كل نوع من أنواع السياسات بالتفصيل في نظرة عامة على مراجع السياسات. يوضِّح هذا الموضوع التفاعل العام، ويوضّح لك كيفية إنشاء السياسات وكيفية إرفاقها بالتدفقات في إعداد الخادم الوكيل لواجهة برمجة التطبيقات.

نشر تغييرات السياسة

لكي تصبح تغييرات السياسة سارية المفعول، يجب نشر مراجعة الخادم الوكيل لواجهة برمجة التطبيقات على بيئة. بعد إرفاق سياسة أو إجراء تغييرات على سياسة حالية، استخدِم واجهة مستخدم الإدارة أو واجهة برمجة التطبيقات للإدارة لنشر التغييرات.

التحقّق من تنفيذ السياسة

للتحقّق من فرض السياسة بشكل صحيح، يجب استدعاء واجهة برمجة التطبيقات بواسطة عميل HTTP. للتحقّق من إعدادات الحصة هذه، أرسِل عدة طلبات إلى واجهة برمجة التطبيقات، بحيث تتجاوز الحصة المسموح بها التي تم ضبطها في سياسة الحصة. (مسار معرّف الموارد المنتظم (URI)، الذي تم ضبطه ليكون إعداد المسار الأساسي في ProxyEndpoint، في الطلب أدناه هو /weather).

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

بعد إرسال أكثر من طلب واحد خلال دقيقة، من المفترَض أن تظهر لك رسالة الخطأ التالية:

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

يشير هذا إلى أنه يتم فرض سياسة الحصة بواسطة خدمات واجهة برمجة التطبيقات.

معالجة الأخطاء استنادًا إلى السياسات

دوِّن تنسيق رسالة الخطأ أعلاه. ويتضمّن ذلك السمة faultstring والسمة errorcode. وفي كثير من الحالات، تحتاج إلى تنفيذ بعض السلوكيات للتعامل مع هذه الأخطاء. يمكنك مثلاً إصدار رسالة مخصّصة لمطوّر برامج تجاوز تطبيقه الحصة المخصّصة.

لمزيد من المعلومات عن معالجة الأخطاء، يُرجى الاطّلاع على أخطاء المناولة.

أفضل الممارسات: مجموعات السياسات الشائعة

لاستيفاء متطلبات الإدارة الأساسية، تفرض الخوادم الوكيلة لواجهة برمجة التطبيقات السياسات التالية عادةً:

التحقق من صحة مفتاح واجهة برمجة التطبيقات الأساسي

مسار طلبات ProxyEndpoint:
  1. SpikeArrest
  2. XMLThreatProtection أو JSONThreatProtection
  3. التحقّق من صحة مفتاح واجهة برمجة التطبيقات
  4. الحصة
  5. ResponseCache
مسار استجابة ProxyEndpoint:
  1. ResponseCache

التحويل الأساسي: من JSON إلى XML

مسار الطلب:
  1. SpikeArrest
  2. JSONThreatProtection
  3. التحقّق من صحة مفتاح واجهة برمجة التطبيقات
  4. الحصة
  5. JSONToXML
مسار الردّ:
  1. ملف XMLToJSON
  2. ResponseCache