أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلىمستندات Apigee X. info
تُقدّم لك الأقسام التالية منتجات واجهة برمجة التطبيقات والمفاهيم الرئيسية ذات الصلة.
ما هو منتج واجهة برمجة التطبيقات؟
بصفتك مزوّد واجهة برمجة تطبيقات، يمكنك إنشاء منتجات واجهة برمجة تطبيقات لتجميع واجهات برمجة التطبيقات وإتاحتها لمطوّري التطبيقات لاستخدامها. يمكنك اعتبار منتجات واجهة برمجة التطبيقات بمثابة مجموعة منتجاتك.
على وجه التحديد، يجمع منتج واجهة برمجة التطبيقات ما يلي:
- مجموعة من موارد واجهة برمجة التطبيقات (معرّفات الموارد المنتظمة)
- خطة الخدمة
- بيانات وصفية خاصة بمؤسستك لأغراض الرصد أو الإحصاءات (اختيارية)
يمكن أن تأتي موارد واجهة برمجة التطبيقات المجمّعة في منتج واجهة برمجة تطبيقات من واجهة برمجة تطبيقات واحدة أو أكثر، لذا يمكنك مزج الموارد ومطابقتها لإنشاء مجموعات ميزات متخصّصة، كما هو موضّح في الشكل التالي.
يمكنك إنشاء منتجات متعددة لواجهة برمجة التطبيقات لتلبية حالات الاستخدام التي تحلّ احتياجات معيّنة. على سبيل المثال، يمكنك إنشاء منتج واجهة برمجة تطبيقات يجمع عددًا من موارد الخرائط لـ تمكين المطوّرين من دمج الخرائط بسهولة في تطبيقاتهم. بالإضافة إلى ذلك، يمكنك ضبط خصائص مختلفة لكل منتج واجهة برمجة تطبيقات، مثل مستويات تسعير مختلفة. على سبيل المثال، يمكنك تقديم مجموعات منتجات واجهة برمجة التطبيقات التالية:
- منتج واجهة برمجة تطبيقات يقدّم حدًا منخفضًا للوصول، مثل 1,000 طلب في اليوم، بسعر مناسب. منتج ثانٍ لواجهة برمجة التطبيقات يتيح الوصول إلى الموارد نفسها، ولكن بحد أعلى للوصول وسعر أعلى.
- منتج مجاني لواجهة برمجة التطبيقات يتيح الوصول للقراءة فقط إلى الموارد. منتج ثانٍ لواجهة برمجة التطبيقات يتيح الوصول للقراءة والكتابة إلى الموارد نفسها مقابل رسوم بسيطة.
بالإضافة إلى ذلك، يمكنك التحكّم في الوصول إلى موارد واجهة برمجة التطبيقات في منتج واجهة برمجة تطبيقات. على سبيل المثال، يمكنك تجميع الموارد التي يمكن للمطوّرين الداخليين فقط أو العملاء الذين يدفعون فقط الوصول إليها.
منتجات واجهة برمجة التطبيقات هي الآلية المركزية للتفويض والتحكّم في الوصول إلى واجهات برمجة التطبيقات. في Apigee، يتم توفير مفاتيح واجهة برمجة التطبيقات، ليس لواجهات برمجة التطبيقات نفسها، بل لمنتجات واجهة برمجة التطبيقات. بمعنى آخر، يتم توفير مفاتيح واجهة برمجة التطبيقات لمجموعات من الموارد مع خطة خدمة مرفقة.
يصل مطوّرو التطبيقات إلى منتجات واجهة برمجة التطبيقات من خلال تسجيل تطبيقاتهم، كما هو موضّح في مقالة تسجيل التطبيقات. عندما يحاول أحد التطبيقات الوصول إلى منتج واجهة برمجة تطبيقات، تفرض Apigee التفويض في وقت التشغيل للتأكّد مما يلي:
- يُسمح للتطبيق الذي يرسل الطلب بالوصول إلى مورد معيّن لواجهة برمجة التطبيقات.
- لم يتجاوز التطبيق الذي يرسل الطلب الحصة المسموح بها.
- إذا تم تحديد ذلك، تتطابق نطاقات OAuth المحدّدة في منتج واجهة برمجة التطبيقات مع النطاقات المرتبطة برمز الدخول المميّز الذي يقدّمه التطبيق.
فهم المفاهيم الرئيسية
يُرجى مراجعة المفاهيم الرئيسية التالية قبل إنشاء منتجات واجهة برمجة التطبيقات.
- مفاتيح واجهة برمجة التطبيقات
- الموافقة التلقائية مقابل الموافقة اليدوية على المفتاح
- الحصص
- نطاقات OAuth
- مستويات الوصول
مفاتيح واجهة برمجة التطبيقات
عند تسجيل تطبيق أحد المطوّرين في مؤسستك، يجب ربط التطبيق بمنتج واحد على الأقل من منتجات واجهة برمجة التطبيقات. نتيجةً لربط تطبيق بواحد أو أكثر من منتجات واجهة برمجة التطبيقات، يمنح Edge التطبيق مفتاح العميل فريدًا.
لا يتيح البوابة المدمجة استخداميعمل مفتاح المستهلك أو رمز الدخول المميّز كبيانات اعتماد للطلب. يُضمّن مطوّر التطبيق مفتاح المستهلك في التطبيق، بحيث عندما يرسل التطبيق طلبًا إلى واجهة برمجة تطبيقات مستضافة على Edge، يمرّر التطبيق مفتاح المستهلك في الطلب بإحدى الطرق التالية:
- عندما تستخدم واجهة برمجة التطبيقات ميزة التحقّق من مفتاح واجهة برمجة التطبيقات، يجب أن يمرّر التطبيق مفتاح المستهلك مباشرةً.
- عندما تستخدم واجهة برمجة التطبيقات ميزة التحقّق من رمز OAuth المميّز، يجب أن يمرّر التطبيق رمزًا مميّزًا تم اشتقاقه من مفتاح المستهلك.
لا يتم فرض مفتاح واجهة برمجة التطبيقات تلقائيًا. سواء كنت تستخدم مفتاح المستهلك أو رموز OAuth المميّزة كبيانات اعتماد للطلب، يتحقّق خادم وكيل واجهة برمجة التطبيقات من بيانات اعتماد الطلب في خوادم وكيل واجهة برمجة التطبيقات من خلال تضمين سياسة VerifyAPIKey أو سياسة OAuth/VerifyAccessToken، في المسار المناسب. إذا لم تضمّن سياسة لفرض بيانات الاعتماد في خادم وكيل واجهة برمجة التطبيقات ، يمكن لأي متصل استدعاء واجهات برمجة التطبيقات. لمزيد من المعلومات، يُرجى الاطّلاع على سياسة التحقّق من مفتاح واجهة برمجة التطبيقات.
للتحقّق من بيانات الاعتماد التي تم تمريرها في الطلب، ينفّذ Edge الخطوات التالية:
- الحصول على بيانات الاعتماد التي يتم تمريرها مع الطلب في حال التحقّق من رمز OAuth المميّز، يتحقّق Edge من أنّ الرمز المميّز لم تنتهِ صلاحيته، ثم يبحث عن مفتاح المستهلك الذي تم استخدامه لإنشاء الرمز المميّز.
- استرداد قائمة منتجات واجهة برمجة التطبيقات التي تم ربط مفتاح المستهلك بها
- التأكّد من أنّ خادم وكيل واجهة برمجة التطبيقات الحالي مضمّن في منتج واجهة برمجة التطبيقات، وما إذا كان مسار المورد الحالي (مسار عنوان URL) مفعّلاً في منتج واجهة برمجة التطبيقات
- التأكّد من أنّ مفتاح المستهلك لم تنتهِ صلاحيته أو تم إبطاله، والتأكّد من أنّ التطبيق لم يتم إبطاله، والتأكّد من أنّ مطوّر التطبيق نشط
إذا نجحت كل عمليات التحقّق أعلاه، تنجح عملية التحقّق من بيانات الاعتماد.
باختصار، ينشئ Edge تلقائيًا مفاتيح المستهلك، ولكن على ناشري واجهة برمجة التطبيقات فرض التحقّق من المفتاح في خوادم وكيل واجهة برمجة التطبيقات باستخدام السياسات المناسبة.
الموافقة التلقائية مقابل الموافقة اليدوية
تتم تلقائيًا الموافقة على جميع الطلبات للحصول على مفتاح للوصول إلى منتج واجهة برمجة تطبيقات من أحد التطبيقات. بدلاً من ذلك، يمكنك ضبط منتج واجهة برمجة التطبيقات للموافقة على المفاتيح يدويًا. في هذه الحالة، عليك الموافقة على طلبات المفاتيح من أي تطبيق يضيف منتج واجهة برمجة التطبيقات. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة تسجيل التطبيقات وإدارة مفاتيح واجهة برمجة التطبيقات.
الحصص
يمكن أن تحمي الحصص خوادمك الخلفية من الزيارات الكثيفة، وتميّز مجموعة منتجاتك. على سبيل المثال، قد تريد تجميع الموارد بحصة عالية كمنتج متميز واستخدام الحزمة نفسها بحصة أقل كمنتج أساسي. يمكن أن تساعد الحصة في حماية خوادمك من التحميل الزائد إذا كان المنتج رائجًا ويتلقّى عددًا كبيرًا من الطلبات.
للحصول على معلومات حول ضبط الحصة، يُرجى الاطّلاع على سياسة الحصة. للحصول على معلومات حول استخدام إعدادات حصة المنتج في سياسات الحصة، يُرجى الاطّلاع على مقالة المنتدى التالية How do the quota settings on an API product interact with quota policies in an API proxy?.
نطاقات OAuth
كمستوى أمان إضافي، يمكنك تحديد أي نطاقات OAuth، كقائمة قيم مفصولة بفاصلة، يجب أن تكون موجودة في رموز الدخول المميّزة التي يتم إرسالها من خلال المنتج. عند إنشاء منتج، عليك أن تكون على دراية بجميع النطاقات التي تستخدمها مؤسستك. يجب أن تتطابق النطاقات التي تضيفها إلى منتج مع النطاقات الحالية، وإلا لن يكون المنتج آمنًا.
لمزيد من المعلومات حول استخدام النطاقات مع سياسات OAuth في Edge، يُرجى الاطّلاع على مقالة العمل مع نطاقات OAuth2.
مستويات الوصول
عند تحديد منتج واجهة برمجة تطبيقات، يمكنك ضبط مستويات الوصول التالية.
| مستوى الوصول | الوصف |
|---|---|
| علني | منتجات واجهة برمجة التطبيقات المتاحة لجميع المطوّرين يمكنك إضافتها إلى بوابات المطوّرين المدمجة أو المستندة إلى Drupal. |
| خاص أو داخلي فقط | منتجات واجهة برمجة التطبيقات المصمّمة للاستخدام الخاص أو الداخلي فقط ملاحظة: ليس هناك فرق وظيفي بين مستويَي الوصول "خاص" و"داخلي فقط". اختَر التصنيف الذي يصف بشكل أفضل الجمهور المستهدف لمنتج واجهة برمجة التطبيقات. بالنسبة إلى البوابة المدمجة، يمكنك إضافة منتجات واجهة برمجة تطبيقات خاصة أو داخلية فقط وإتاحتها لمطوّري التطبيقات، حسب الحاجة. بالنسبة إلى بوابات المطوّرين المستندة إلى Drupal، يمكنك إدارة الوصول إلى منتجات واجهة برمجة التطبيقات "خاص" أو "داخلي فقط" على بوابة مخصّصة للمطوّرين، كما هو موضّح في الأقسام التالية:
|