مقدمة

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

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

ما هو منتج واجهة برمجة التطبيقات؟

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

على وجه التحديد، يعمل منتج واجهة برمجة التطبيقات على تجميع ما يلي:

  • جمع موارد واجهة برمجة التطبيقات (URI)
  • خطة الخدمة
  • البيانات الوصفية الخاصة بنشاطك التجاري للتتبّع أو الإحصاءات (اختيارية)

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

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

  • منتج واجهة برمجة التطبيقات يوفّر حدًا منخفضًا للوصول، مثل 1000 طلب في اليوم، بسعر مخفَّض. منتج ثانٍ من واجهة برمجة التطبيقات يوفر الوصول إلى نفس الموارد، ولكن مع حد وصول أعلى وسعر أعلى.
  • منتج مجاني لواجهة برمجة التطبيقات يوفر حق الوصول للقراءة فقط إلى الموارد. منتج ثانٍ لواجهة برمجة التطبيقات يوفّر إذن الوصول للقراءة/الكتابة إلى الموارد نفسها مقابل رسوم بسيطة

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

منتجات واجهة برمجة التطبيقات هي الآلية المركزية للتفويض والتحكم في الوصول إلى واجهات برمجة التطبيقات. في Apigee، يتم توفير مفاتيح واجهة برمجة التطبيقات، ليس لواجهات برمجة التطبيقات نفسها، ولكن لمنتجات واجهة برمجة التطبيقات. بعبارة أخرى، يتم توفير مفاتيح واجهة برمجة التطبيقات لحِزم من الموارد مع خطة خدمة مرفقة.

يصل مطورو التطبيقات إلى منتجات واجهة برمجة التطبيقات من خلال تسجيل تطبيقاتهم، كما هو موضَّح في تسجيل التطبيقات. عندما يحاول تطبيق الوصول إلى منتج واجهة برمجة التطبيقات، تفرض Apigee التفويض في وقت التشغيل لضمان ما يلي:

  • يتم السماح للتطبيق الذي يتقدم بطلب الوصول إلى مورد معين من واجهة برمجة التطبيقات.
  • لم يتجاوز التطبيق صاحب الطلب الحصة المسموح بها.
  • في حال تحديد نطاقات OAuth المحدَّدة في منتج واجهة برمجة التطبيقات، تتطابق مع النطاقات المرتبطة برمز الدخول الذي يقدِّمه التطبيق.

فهم المفاهيم الرئيسية

يُرجى مراجعة المفاهيم الرئيسية التالية قبل إنشاء منتجات واجهة برمجة التطبيقات الخاصة بك.

مفاتيح واجهة برمجة التطبيقات

عند تسجيل تطبيق مطوِّر في مؤسستك، يجب أن يكون التطبيق مرتبطًا بمنتج واحد على الأقل من منتجات واجهة برمجة التطبيقات. نتيجة لإقران تطبيق مع منتج واحد أو أكثر من منتجات واجهة برمجة التطبيقات، يعيّن Edge للتطبيق مفتاحًا فريدًا للمستهلك.

يعمل مفتاح العميل أو رمز الدخول كبيانات اعتماد للطلب. يضمِّن مطوّر التطبيق مفتاح العميل في التطبيق، وبالتالي عندما يرسل التطبيق طلبًا إلى واجهة برمجة تطبيقات يستضيفها Edge، يمرّر التطبيق مفتاح العميل في الطلب بإحدى الطرق التالية:

  • عندما تستخدم واجهة برمجة التطبيقات ميزة "التحقق من مفتاح واجهة برمجة التطبيقات"، يجب أن يمرر التطبيق مفتاح العميل مباشرةً.
  • عندما تستخدم واجهة برمجة التطبيقات التحقّق من رمز OAuth المميز، يجب أن يمرر التطبيق رمزًا مميزًا تم الحصول عليه من مفتاح المستهلك.

لا يتم فرض مفتاح واجهة برمجة التطبيقات تلقائيًا. يتحقّق الخادم الوكيل لواجهة برمجة التطبيقات، سواء كنت تستخدم مفتاح العميل أو رموز OAuth المميزة كبيانات اعتماد الطلب، من بيانات اعتماد الطلب في الخوادم الوكيلة لواجهة برمجة التطبيقات من خلال تضمين سياسة التحقّق من واجهة برمجة التطبيقات أو سياسة OAuth/CheckAccessToken في المسار المناسب. في حال عدم تضمين سياسة فرض بيانات الاعتماد في الخادم الوكيل لواجهة برمجة التطبيقات، يمكن لأي متصل استدعاء واجهات برمجة التطبيقات الخاصة بك. لمزيد من المعلومات، يُرجى الاطّلاع على سياسة "التحقّق من مفتاح واجهة برمجة التطبيقات".

للتحقق من بيانات الاعتماد التي تم تمريرها في الطلب، يقوم Edge بإجراء الخطوات التالية:

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

في حال اجتياز جميع عمليات التحقّق أعلاه، تنجح عملية إثبات صحة بيانات الاعتماد.

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

الموافقة التلقائية في مقابل الموافقة اليدوية

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

الحصص

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

لمزيد من المعلومات عن ضبط الحصة، يُرجى الاطّلاع على سياسة الحصة. وللحصول على معلومات عن استخدام إعدادات حصة المنتجات في سياسات الحصص، يُرجى الاطّلاع على مقالة المنتدى التالية كيف تتفاعل إعدادات الحصة في منتج واجهة برمجة التطبيقات مع سياسات الحصة في خادم وكيل لواجهة برمجة التطبيقات؟.

نطاقات OAuth

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

لمزيد من المعلومات عن استخدام النطاقات مع سياسات Edge OAuth، يُرجى الاطّلاع على العمل مع نطاقات OAuth2.

مستويات الوصول

عند تحديد منتج واجهة برمجة التطبيقات، يمكنك ضبط مستويات الوصول التالية.

مستوى الوصول الوصف
عامة منتجات واجهة برمجة التطبيقات المتاحة لجميع المطورين. ويمكنك إضافتها إلى بوابات مطوّري البرامج المدمَجة أو المستندة إلى Drupal.
خاص أو داخلي فقط

منتجات واجهة برمجة التطبيقات المصمَّمة للاستخدام الخاص أو الداخلي

ملاحظة: ليس هناك اختلاف في الوظائف بين مستويات الوصول الخاص والداخلي فقط. اختَر التصنيف الذي يقدّم أفضل وصف للجمهور المستهدف من منتج واجهة برمجة التطبيقات.

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

بالنسبة إلى بوابات مطوّري البرامج المستندة إلى Drupal، يمكنك إدارة الوصول إلى منتجات واجهة برمجة التطبيقات الخاصة أو الداخلية فقط على بوابة المطوّرين، كما هو موضّح في الأقسام التالية: