مستوى الأمان في "الأميال الأخيرة"

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

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

في ما يلي الخيارات الأساسية لإعداد أمان الوصول الأخير:

  • بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة للعميل
  • مصادقة البريد الصادر
  • وحدة Node.js tls

بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة للعميل

والآلية الأساسية لتأمين النهاية هي بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة للعميل، وتُعرف أيضًا باسم "المصادقة المتبادلة".

راجِع ضبط بروتوكول أمان طبقة النقل (TLS) من Edge إلى الخلفية (Cloud وخاصة Cloud).

مصادقة البريد الصادر

يمكن أيضًا فرض الأمان من خلال طلب الخادم الوكيل لواجهة برمجة التطبيقات بتقديم بيانات اعتماد لخدمة الخلفية.

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

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

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

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

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

بيانات اعتماد عميل OAuth

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

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

يمكن استخدام عدد من الأساليب لتنفيذ بيانات اعتماد العميل الصادر.

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

SAML

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

راجِع سياسات تأكيد SAML.

Node.js

إذا كان هدف الخادم الوكيل لواجهة برمجة التطبيقات هو تطبيق Node.js، يمكنك استخدام وحدة Node.js tls لإنشاء اتصالات آمنة بخدمات الخلفية. ويمكنك إجراء الطلبات الصادرة باستخدام الوحدة tls بالطريقة نفسها التي تجريها عادةً في Node.js. عليك في الأساس إضافة مفاتيح وشهادات من جهة العميل (ملفات .pem) إلى دليل الموارد أو العُقد وتحميلها داخل النص البرمجي. للحصول على معلومات عن استخدام وحدة tls وطرقها، راجِع مستندات وحدة Node.js tls. لمزيد من المعلومات، راجِع فهم توافق Edge مع وحدات Node.js.