إعداد وإعداد Edge Microgateway

أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

الإصدار 3.3.x من Edge Microgateway

نظرة عامة

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

ينقسم هذا الدليل إلى الأجزاء التالية:

شرط أساسي: تثبيت Edge Microgateway

اتّبِع التعليمات الواردة في تثبيت Edge Microgateway. بعد إكمال عملية التثبيت، ستكون مستعدًا لاتّباع الخطوات الواردة في هذا البرنامج التعليمي.

الجزء 1: ضبط Edge Microgateway

في هذا الجزء، ستستخدم أمرًا من واجهة سطر الأوامر (CLI) لإعداد Edge Microgateway من أجل التواصل مع Apigee Edge.

خطوات ضبط Apigee Edge Cloud

اتّبِع الخطوات التالية لاستخدام Edge Microgateway مع Apigee Edge Cloud:

  1. ابدأ Edge Microgateway (يجب تنفيذ هذه الخطوة مرة واحدة فقط):
    edgemicro init
  2. تم وضع ملف إعداد باسم default.yaml في الدليل الرئيسي في دليل فرعي باسم .edgemicro. تحقَّق الآن للتأكّد من أنّ هذا الملف متوفّر:
    ls ~/.edgemicro
    default.yaml

    ملاحظة: في مستندات Edge Microgateway، نشير إلى الدليل الرئيسي باستخدام علامة المد (~)، وهي اختصار UNIX. إذا كنت تستخدم نظام التشغيل Windows، وكان لديك برنامج shell لا يتوافق مع علامة التلدة، عليك استبدال علامة التلدة بمتغير البيئة المناسب في الأوامر التي تشير إلى الدليل الرئيسي. على سبيل المثال: %USERPROFILE%/.edgemicro.

  3. تتضمّن جميع أوامر واجهة سطر الأوامر وظيفة مساعدة. اطبع تعليمات الأمر edgemicro configure:
    edgemicro configure -h
  4. نفِّذ الأمر التالي لضبط Edge Microgateway:
    edgemicro configure -o [org] -e [env] -u [username] 

    المكان:

    • org: اسم مؤسسة Edge (يجب أن تكون مشرفًا في المؤسسة).
    • env: بيئة في مؤسستك (مثل بيئة الاختبار أو الإنتاج)
    • username: عنوان البريد الإلكتروني المرتبط بحسابك على Apigee

      ملاحظة: يسمح أمر الضبط بإضافة مَعلمات إضافية. للحصول على قائمة كاملة، راجِع ضبط Edge Microgateway لخدمة Apigee Edge Cloud.

مثال

edgemicro configure -o docs -e test -u jdoe@example.com

الناتج

./edgemicro configure -o docs -e test -u jdoe@apigee.com
password:
current nodejs version is v12.5.0
current edgemicro version is 3.1.0
password:
file doesn't exist, setting up
Give me a minute or two... this can take a while...
App edgemicro-auth deployed.
checking org for existing KVM
error checking for cert. Installing new cert.
creating KVM
adding private_key
adding public_key
configuring host edgemicroservices-us-east-1.apigee.net for region us-east-1

saving configuration information to: $HOME/.edgemicro/docs-test-config.yaml

vault info:
 -----BEGIN CERTIFICATE-----
MIICpDCCAYwCCQCQ2mJZJGbPPTANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3QwHhcNMTcwOTA3MjA0ODA4WhcNMTcwOTA4MjA0ODA4WjAUMRIwEAYD
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDw
yzmqi5CelqqtTr6IaFe1ssrMXEDnNtkBh95U6F5zHLsNQhJcyNUAO9um6FLMSqSd
fTztXfWUZzDgmbb6sfbx/9cqpvQ8TIjxyIz8xGM9H4legRQmsCQoYGkLjpPE5ZOa
wZrI5IaVm8LY6vbopPFwxgKOQ9bphx6k9Na055DmNyZAOTMD+4I0m/RdsrnZnYih
3DaFj1tXHKZI1jfAt/QOif5Nmk4+JckYwF+9HBysWUbbvj/gnBjVYF2Isb7q7oFD
lPGhwFoIebMqHMWD8lG7+9RJDO9dDV6f1g1/9waIrq1D+MoVXos9VMstNrPp0cKF
Ue+lAkct8tylH+2MosF7AgMBAAEwDQYJKoZIhvcNAQELBQADggEBAJMRdcQh3ayy
csVVT4TYwxV7MKWRfhDRz6X+MM9frB+Z7sI4+ZoZbXKOoZI2hSjmbdLpkNR/m9eJ
+1Uk0JKmpSY7Q+1rRrvcHsWNysGf4z+zDJXYECTrtSnXKBXtb9SJ8JAfoZOQD0lA
zmKuJjQMLTdiYMHOBR6ZWnaKaRvrQwGHcQrheJm4a90XgZF6jcRR8CPrBzkmsbCp
IU/Ux3E17wDGYPxjJs5otyQG8rN/88RGyaSeXK8rjKr9D4KFGJeasXBKmTG2afAr
yfBvS4h6s42FCOR/eLpmMllVoO9up71Fa3EtV+aK+FNNY9uMbgUHeLQE7z9nn06q
PTmvExZLkLQ=
-----END CERTIFICATE-----

The following credentials are required to start edge micro
  key: 27ee39567c75e4567a66236cbd4e86d1cc93df6481454301bd5fac4d3497fcbb
  secret: 4618b0008a6185d7327ebf53bee3c50282ccf45a3cceb1ed9828bfbcf1148b47
    

خطوات إعداد Apigee Private Cloud

اتّبِع الخطوات التالية لاستخدام Edge Microgateway مع Apigee Private Cloud:

  1. ابدأ Edge Microgateway (يجب تنفيذ هذه الخطوة مرة واحدة فقط):
    edgemicro init
  2. طباعة معلومات المساعدة الخاصة بالأمر edgemicro private configure يمكنك بهذه الطريقة طباعة المساعدة لأي أمر أو خيار أمر في واجهة سطر الأوامر Edge Microgateway.
    edgemicro private configure -h
  3. نفِّذ الأمر التالي. يتطلّب ذلك معلومات عادية حول حسابك على Apigee Edge Private Cloud: اسم المؤسسة واسم البيئة واسم المستخدم (عنوان البريد الإلكتروني) وكلمة المرور وعنوان IP لخادم الإدارة وعنوان IP لجهاز التوجيه. يجب أن تكون مشرف مؤسسة Edge لاستخدام هذا الأمر:
    edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]

    المكان:

    • org هو اسم مؤسسة Edge (يجب أن تكون مشرفًا في المؤسسة).
    • env هي بيئة في مؤسستك (مثل بيئة الاختبار أو الإنتاج).
    • runtime_url هو عنوان URL لوقت التشغيل الخاص بمثيل السحابة الإلكترونية الخاصة.
    • mgmt_url هو عنوان URL الخاص بخادم الإدارة لآلة السحابة الإلكترونية الخاصة.
    • username هو عنوان البريد الإلكتروني المرتبط بحسابك على Apigee.
    • virtual_host هي قائمة قيم مفصولة بفاصلة لأسماء المضيفين الافتراضيين. القيم التلقائية هي default,secure

مثال

edgemicro private configure -o docs -e test -u jdoe@example.com -r http://192.162.52.106:9001 -m http://192.162.52.106:8080 -v default

أو إذا كان لديك اسم مستعار للمضيف الافتراضي myorg-test.mycompany.com، يمكنك استخدام أمر على النحو التالي:

edgemicro private configure -o docs -e test -u jdoe@example.com -r myorg-test.mycompany.com -m http://192.162.52.106:8080 -v default

الناتج

delete cache config
checking for previously deployed proxies
configuring edgemicro internal proxy
deploying edgemicro internal proxy
deploying  edgemicro-auth  app
copy auth app into tmp dir
copy config into tmp deer
Give me a minute or two... this can take a while...
App edgemicro-auth added to your org. Now adding resources.

checking org for existing KVM
error checking for cert. Installing new cert.
creating KVM
adding private_key
adding public_key
configuring host http://192.168.52.106:9001 for region dc-1

saving configuration information to: $HOME/.edgemicro/jdoe-test-config.yaml
vault info: 
-----BEGIN CERTIFICATE----- 
MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWsKWBDP9o
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa 
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd 
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L 
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j 
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X 
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd 
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz 
pFkIxepyr/0= 
-----END CERTIFICATE----- 

The following credentials are required to start edge micro 
   key: a3f8f3dfe39158fc3c50b274f0af2234246e0d5f6ea4ad09389b645147151ba3
   secret: 3e9904802fb3c0e8ca408128a11119cf13546d54dac10ace944c097a726a1263

edgemicro configuration complete!
    

التحقّق من عملية التثبيت

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

edgemicro verify -o [org] -e [env] -k [key] -s [secret]

المكان:

  • org هو اسم مؤسسة Edge (يجب أن تكون مشرفًا في المؤسسة).
  • env هي بيئة في مؤسستك (مثل بيئة الاختبار أو الإنتاج).
  • key هو المفتاح الذي تم عرضه سابقًا من خلال الأمر configure.
  • secret هو المفتاح الذي تم عرضه سابقًا من خلال الأمر configure.

مثال

edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f624ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0156d7132afbd03625bbd85dc34ebfefae4f23fbcb3c

لمحة عن الإعداد

تتيح جميع عمليات الإعداد التي تم إجراؤها حتى الآن لـ Edge Microgateway أن يتم تشغيلها تلقائيًا على Apigee Edge. بعد نجاح عملية التمهيد، يسترد Edge Microgateway حمولة تتضمّن معلومات إعداد إضافية من Apigee Edge.

ما هو الغرض من استخدام معلومات الإعداد هذه؟ كما سنرى في الجزء التالي من هذا البرنامج التعليمي، عندما يبدأ Edge Microgateway، يحتاج إلى تلقّي قائمة بخوادم وكيل واجهة برمجة التطبيقات الخاصة بـ Edge Microgateway من Apigee Edge. في الجزء التالي من هذا البرنامج التعليمي، ستنشئ وكيلًا متوافقًا مع Microgateway. يقتصر استخدام Edge Microgateway على العملاء الذين يستدعون واجهات برمجة التطبيقات التي تستخدم وكلاء واجهة برمجة التطبيقات المتوافقين مع Microgateway، ويُطلب من العملاء (تلقائيًا) تقديم رمز أمان صالح لكل طلب. للاطّلاع على مزيد من المعلومات حول خوادم الوكيل هذه، راجِع مقالة ما يجب معرفته حول خوادم الوكيل المتوافقة مع Edge Microgateway في نظرة عامة على Edge Microgateway.

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

بعد ذلك، سنشرح كيفية إنشاء خوادم وكيلة متوافقة مع Edge Microgateway، ثم سنبدأ تشغيل Edge Microgateway ونختبر عملية الإعداد.

الجزء 2: إنشاء عناصر على Apigee Edge

في هذا الجزء، ستنشئ الكيانات التالية على Edge:

  • وكيل متوافق مع البوابة المصغّرة: هذا وكيل خاص يمكن أن يكتشفه Edge Microgateway عند بدء التشغيل. تتّبع الخوادم الوكيلة المتوافقة مع Microgateway اصطلاح تسمية يجب اتّباعه، وهو أن يبدأ الاسم بالرمز edgemicro_. على سبيل المثال، edgemicro_hello أو edgemicro_userinfo. عند بدء تشغيل Edge Microgateway، يستردّ من Edge قائمة بالخوادم الوكيلة المتوافقة مع Edge Microgateway من مؤسسة Edge والبيئة نفسها التي حدّدتها عند بدء تشغيل Edge Microgateway.

    بالنسبة إلى كل وكيل متوافق مع البوابة المصغّرة، يستردّ Edge Microgateway عنوان URL المستهدف للوكيل ومساره الأساسي. توفر الخوادم الوكيلة المتوافقة مع Microgateway أيضًا طريقة ملائمة لربط بيانات الإحصاءات التي تم إنشاؤها بواسطة Edge Microgateway بخادم وكيل على منصة Edge. بما أنّ Microgateway تعالج طلبات البيانات من واجهة برمجة التطبيقات، فإنّها ترسل بيانات الإحصاءات بشكل غير متزامن إلى Edge. ستظهر بيانات "إحصاءات Google" في واجهة مستخدم Edge Analytics ضمن أسماء الخوادم الوكيلة المتوافقة مع البوابة المصغّرة، كما هو الحال مع أي خادم وكيل آخر.
  • منتج ومطوّر وتطبيق مطوّر: تستخدم Edge Microgateway المنتجات والمطوّرين وتطبيقات المطوّرين لتفعيل أمان رمز الدخول OAuth2 أو مفتاح واجهة برمجة التطبيقات. عند بدء تشغيل Edge Microgateway، يتم تنزيل جميع إعدادات المنتج من مؤسسة Apigee Edge. ويستخدم هذه المعلومات للتحقّق من صحة طلبات البيانات من واجهة برمجة التطبيقات التي يتم إجراؤها من خلال Edge Microgateway باستخدام مفاتيح واجهة برمجة التطبيقات أو رموز الدخول OAuth2.

1. إنشاء وكيل واجهة برمجة تطبيقات متوافق مع Edge Microgateway على Edge

  1. سجِّل الدخول إلى مؤسستك على Apigee Edge.
  2. انقر على تطوير > خوادم وكيلة لواجهة برمجة التطبيقات في قائمة التنقّل الجانبية.
  3. انقر على + خادم وكيل. يتم استدعاء معالج "إنشاء خادم وكيل".
  4. في صفحة المعالج الأولى، اختَر الخادم الوكيل العكسي (الأكثر شيوعًا).
  5. انقر على التالي.
  6. في صفحة "التفاصيل" ضمن المعالج، اضبط الإعدادات على النحو التالي. احرص على ملء المعالج بالطريقة نفسها الموضّحة أدناه:
    • اسم الخادم الوكيل: edgemicro_hello
    • المسار الأساسي للخادم الوكيل: /hello
    • واجهة برمجة التطبيقات الحالية: http://mocktarget.apigee.net/
  7. انقر على التالي.
  8. في صفحة "الأمان" ضمن المعالج، اختَر بدون تغيير (لا شيء).
  9. انقر على التالي.
  10. في صفحة "المضيفات الافتراضية" ضمن المعالج، اقبل الإعدادات التلقائية.
  11. انقر على التالي.
  12. في صفحة "الإنشاء" ضمن المعالج، راجِع إعدادات الخادم الوكيل. تأكَّد من اختيار بيئة الاختبار.
  13. انقر على إنشاء ونشر.

2. إنشاء منتج لواجهة برمجة التطبيقات

  1. انقر على نشر > منتجات واجهة برمجة التطبيقات في قائمة التنقّل الجانبية.
  2. انقر على + منتج واجهة برمجة التطبيقات.
  3. أدخِل تفاصيل المنتج الموضّحة في الجدول التالي:
    الحقل الوصف
    الاسم EdgeMicroTestProduct
    الاسم المعروض Edge Microgatway Test Product
    البيئة اختبار
    إذن الوصول علني
    نوع الموافقة على المفتاح تلقائي
  4. في قسم "موارد واجهة برمجة التطبيقات"، أضِف خادم وكيل لواجهة برمجة التطبيقات الذي أنشأته للتو وخادم الوكيل edgemicro-auth:
    • edgemicro_hello
    • edgemicro-auth
  5. انقر على حفظ.

3- إنشاء مطوِّر

لأغراض هذا البرنامج التعليمي، يمكنك استخدام أي حساب مطوِّر حالي في الخطوة التالية، وهي إنشاء تطبيق مطوِّر، ولكن إذا أردت، يمكنك إنشاء حساب مطوِّر تجريبي الآن:

  1. انقر على نشر > المطوّرون في قائمة التنقّل الجانبية.
  2. انقر على + مطوِّر.
  3. املأ مربّع الحوار لإنشاء حساب مطوِّر اختباري.

4. إنشاء تطبيق مطوِّر

ستستخدم بيانات اعتماد العميل من هذا التطبيق لإجراء طلبات آمنة إلى واجهة برمجة التطبيقات من خلال Edge Microgateway:

  1. انقر على نشر > التطبيقات في قائمة التنقّل الجانبية.
  2. انقر على + تطبيق. ستظهر صفحة "تفاصيل تطبيق المطوِّر".
  3. املأ صفحة "تطبيق المطوِّر" على النحو التالي:
    1. الاسم: EdgeMicroTestApp
    2. الاسم المعروض: EdgeMicroTestApp
    3. المطوّر: اختَر المطوّر التجريبي الذي أنشأته. يمكنك أيضًا استخدام أي مطوِّر حالي لأغراض هذا البرنامج التعليمي.
    4. بيانات الاعتماد:
      1. اختَر "تاريخ انتهاء الصلاحية": مطلقًا.
      2. انقر على + منتج واختَر EdgeMicroTestProduct (المنتج الذي أنشأته للتو)
  4. انقر على حفظ.
  5. ستعود إلى صفحة "قائمة التطبيقات".
  6. اختَر التطبيق الذي أنشأته للتو، وهو EdgeMicroTestApp.
  7. انقر على عرض بجانب مفتاح المستهلك وسر المستهلك.

الجزء 3: تشغيل Edge Microgateway

بعد إعداد Edge Microgateway وخادم وكيل واحد على الأقل متوافق مع Edge Microgateway على Edge، حان الوقت لبدء تشغيل Edge Microgateway. سيتم تشغيل خادم HTTP لـ Edge Microgateway على جهازك المحلي، وستجري طلبات البيانات من واجهة برمجة التطبيقات مباشرةً إلى هذا الخادم.

1. بدء Edge Microgateway

استخدِم الأمر edgemicro start لبدء Edge Microgateway.

  1. تأكَّد من توفّر المفاتيح التي تم عرضها سابقًا عند تنفيذ الأمر edgemicro configure. كانت النتيجة تبدو على النحو التالي:
    You need key and secret while starting edgemicro instance
    
    key: da4778e7c240a5d4585fc559eaba5083328828bc9f3a7f583e8b73e
    secret: 3aad7439708b4aeb38ee08e82189921ad00e6fc1ba8a8ae9f929ee2
  2. (اختياري) طباعة معلومات المساعدة للأمر edgemicro start
    edgemicro start -h
  3. لبدء Edge Microgateway، شغِّل الأمر التالي:
    edgemicro start -o [org] -e [env] -k [key] -s [secret]

    المكان:

    • org هو اسم مؤسسة Edge (يجب أن تكون مشرف مؤسسة).
    • env هي بيئة في مؤسستك (مثل بيئة الاختبار أو الإنتاج).
    • key هو المفتاح الذي تم عرضه سابقًا من خلال الأمر configure.
    • secret هو المفتاح الذي تم عرضه سابقًا من خلال الأمر configure.

    مثال

    edgemicro start -o docs -e test -k 701e70e718ce6dc1880616b3c39177d64a88754d615c7a4e1f78b6181d000723 -s 05c14356e42d136b83dd135cf8a18531ff52d7299134677e30ef4e34ab0cc824

    الناتج

    يستردّ الأمر start الكثير من معلومات الضبط من Apigee Edge (التي يتم عرضها في نافذة الوحدة الطرفية). في الناتج، ستظهر لك قائمة بالوكلاء والمنتجات التي تم اكتشافها والمتوافقة مع البوابة المصغّرة. في نهاية الناتج، من المفترض أن يظهر لك ما يلي:

    ...
    
    current nodejs version is v12.5.0
    current edgemicro version is 3.1.0
    info: jwk_public_keys download from null returned 200 undefined
    info: jwt_public_key download from https://docs-test.apigee.net/edgemicro-auth/publicKey returned 200 OK
    info: products download from https://docs-test.apigee.net/edgemicro-auth/products returned 200 OK
    info: config download from https://edgemicroservices-us-east-1.apigee.net/edgemicro/bootstrap/organization/docs/environment/test returned 200 OK
    PROCESS PID : 17991
  4. التحقّق من حالة البوابة المصغّرة في نافذة وحدة طرفية أخرى، انتقِل إلى الدليل نفسه الذي بدأت فيه Edge Micro وأدخِل الأمر التالي:
    edgemicro status
    current nodejs version is v12.5.0
    current edgemicro version is 3.1.0
    edgemicro is running with 8 workers

ماذا حدث؟

يتم تنزيل حمولة من معلومات إعدادات Edge Microgateway من Apigee Edge وحفظها مؤقتًا على الجهاز. وتتضمن هذه المعلومات ما يلي:

  • المفتاح العام الذي أنشأناه وخزّناه سابقًا في "خريطة قيم المفاتيح" (KVM) مشفّرة
  • تمثّل هذه السمة جميع الخوادم الوكيلة المتوافقة مع Edge Microgateway والمتاحة في المؤسسة أو البيئة. هذه هي جميع الخوادم الوكيلة التي تبدأ أسماؤها بالبادئة edgemicro_.
  • تمثّل هذه السمة جميع منتجات واجهة برمجة التطبيقات المتوفّرة في المؤسسة أو البيئة.

باستخدام هذه المعلومات، يعرف Edge Microgateway الوكلاء ومسارات الوكلاء المسموح له بمعالجتها. تستخدم هذه السياسة معلومات المنتج لفرض الأمان (بالطريقة نفسها التي يستخدمها أي وكيل لواجهة برمجة التطبيقات على Apigee Edge، حيث ترتبط مفاتيح تطبيقات المطوّرين بالمنتجات). سنشرح لك قريبًا الخطوات اللازمة لتأمين Edge Microgateway.

2. اختبار Edge Microgateway

بعد تشغيل Edge Microgateway، يمكنك استدعاء الخادم الوكيل. تم تنزيل إعدادات الخادم الوكيل edgemicro_hello من Edge عند بدء تشغيل Edge Microgateway. تذكَّر أنّ مسار basepath الخاص بالخادم الوكيل هو /hello.

لاختبار Edge Microgateway، نبدأ بمسار القاعدة ونضيف مسار مورد /echo. يُرجى العِلم أنّ كل ما يلي المسار الأساسي (بما في ذلك أي مَعلمات طلب البحث) يتم تمريره ببساطة إلى هدف الخلفية:

curl -i http://localhost:8000/hello/echo
{"error":"missing_authorization","error_description":"Missing Authorization header"}

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

4. إيقاف Edge Microgateway

  1. في نافذة طرفية منفصلة، انتقِل إلى cdالدليل نفسه الذي بدأت منه Edge Microgateway.
  2. أدخِل أمر الإيقاف:
    edgemicro stop

الجزء 4: Secure Edge Microgateway

يمكنك تأمين طلبات البيانات من واجهة برمجة التطبيقات التي يتم إجراؤها من خلال Edge Microgateway باستخدام مفتاح واجهة برمجة تطبيقات أو رمز مميّز للوصول.

تأمين طلبات البيانات من واجهة برمجة التطبيقات باستخدام رمز دخول OAuth2

اتّبِع الخطوات التالية إذا كنت تريد المصادقة على طلبات البيانات من واجهة برمجة التطبيقات باستخدام رمز دخول OAuth2:

1. الحصول على المفاتيح المطلوبة

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

2. الحصول على رمز دخول

هناك طريقتان للحصول على رمز دخول. سنوضّح لك الطريقتَين.

استخدام واجهة سطر الأوامر للحصول على رمز دخول

الطريقة الأولى سهلة الاستخدام، وتتّبع النمط الذي استخدمناه في جميع أنحاء الدليل التعليمي. تُعدّ الطريقة الثانية أكثر فائدة بشكل عام لمطوّري تطبيقات العملاء الذين يحتاجون إلى طلب رموز مميّزة. يتم تنفيذ نقطة نهاية الرمز المميز الفعلية في خادم وكيل edgemicro-auth الذي تم نشره عند إعداد Edge Microgateway.

  1. (اختياري) اطّلِع على تعليمات الأمر token get:
    edgemicro token get -h
  2. أنشئ الرمز المميّز، مع استبدال قيمتَي "مفتاح المستهلك" و"سر المستهلك" من تطبيق المطوّر الذي أنشأته على Apigee Edge في المَعلمتَين -i و-s:
    edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]

    المكان:

    • org هو اسم مؤسسة Edge (يجب أن تكون مشرف مؤسسة).
    • env هي بيئة في مؤسستك (مثل بيئة الاختبار أو الإنتاج).
    • consumer_id هو رقم تعريف المستهلك في تطبيق المطوّر الذي أنشأته سابقًا.
    • consumer_secret هو Consumer Secret في تطبيق المطوّر الذي أنشأته سابقًا.

    مثال

    edgemicro token get -o docs -e test -i G0IAeU864EtBo99NvUbn6Z4CBwVcS2 -s uzHTbwNWvoSmOy

    الناتج (مثال)

    current nodejs version is v12.5.0
    { token: 'eyJ0eXAiOiJKV1QiLCJhbGciSUzI1NiJ9.eyJhcHBsaWNhdGl
    vbl9uYW1lIjoiNWNiMGY0tOWMzOC00YmJjLWIzNzEtZGMxZTQzOGYxZGMxI
    iwiY2xpZW50X2lkIjoiNVVdBWEdvSU9lbzYwYWV3OTRQN0c1TUFaRTNhSnA
    iLCJzY29wZXMiOltdLCJhcGlfcHJvjdF9saXN0IjpbIsVkZ2VNaWNyb1Rlc
    3RQcm9kdWN0IlmlhdCI6MTQ3ODIwODMzMiwiZXhwIjoxNDc4MjEwMTMxfQ.
    v3Q8Rs0W9FO_XpERwIAMMXhjGamRmmmWgrAy1wJv0-99oajx5ASI5qjNubM
    nCF14xxwlVXHcz1VfedA8Nx7Ih145zhWWuPKL9muzhXXnVBRFeBMeeLqJk4
    QQ7Bhst7xH_68nJSTE20Egu95DHOCUemfrepDFH0VggY4BmzvwLkBNfz_te
    E_YqwKZbpGOLMdKK1vMk0fk0x19SieIMS_aJYeOAklrzUhnFxWJFrsAWsax
    NLx_BbQcZzYfK1JSDUrhRNVBuPHMnGjNA_oHw2J4qa6Hsp62PfchG-DIW_t
    -0BFnYf3rYXmqyNORqFrOMdl4VxqQ' }

(اختياري) استخدام واجهة برمجة التطبيقات للحصول على رمز مميز

إذا كنت معتادًا على طلب خوادم Edge الوكيلة باستخدام curl أو أي عميل HTTP آخر، سيهمّك معرفة أنّه يمكنك طلب نقطة نهاية الرمز المميّز مباشرةً، بدلاً من استخدام الأمر edgemicro token. في ما يلي مثال على curl. ما عليك سوى استبدال اسمَي مؤسستك وبيئتك في عنوان URL، وتمرير قيمتَي مفتاح العميل وسر العميل مفصولتَين بنقطتَين رأسيتَين في عنوان Basic Authentication:

curl -i -X POST "http://[org]-[env].apigee.net/edgemicro-auth/token" -d '{ "client_id": "your consumer key", "client_secret": "your consumer secret", "grant_type": "client_credentials" }' -H "Content-Type: application/json"

المكان:

  • org هو اسم مؤسسة Edge (يجب أن تكون مشرفًا في المؤسسة).
  • env هي بيئة في مؤسستك (مثل بيئة الاختبار أو الإنتاج).
  • client_id هو رقم تعريف المستهلك في تطبيق المطوّر الذي أنشأته سابقًا.
  • client_secret هو سر المستهلك في تطبيق المطوّر الذي أنشأته سابقًا.

الناتج (مثال)

يعرض الأمر، سواء استخدمت أمر edgemicro token في واجهة سطر الأوامر أو طلبت نقطة النهاية باستخدام curl، رمز دخول موقّعًا يمكن استخدامه لإجراء طلبات من العميل. على سبيل المثال:

MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFsnhB0Yvg6JKWxKWBDP9o
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik241yfBku7olooXKRKTRKOUoXa
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd 
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L 
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j 
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X 
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd 
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz 
pFkIxepyr/0=
      

3. التحقّق من الإعداد في Edge Microgateway

  1. افتح الملف $HOME/.edgemicro/org-env-config.yaml. راجِع مكان تثبيت Edge Microgateway إذا لم تتمكّن من العثور على هذا الملف.
  2. تأكَّد من ضبط خصائص المكوّن الإضافي oauth على false. تكون هذه الخيارات غير مفعَّلة تلقائيًا، ولكن من المستحسن التحقّق منها:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
  3. في ملف org-env-config.yaml أيضًا، تأكَّد من إضافة المكوّن الإضافي oauth إلى العنصر plugins:sequence، كما يلي:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
  4. إذا أجريت أي تغييرات على الملف، عليك إعادة تحميل التغييرات إلى مثيل Edge Microgateway قيد التشغيل. يعيد هذا الأمر ضبط Edge Microgateway بدون أي توقّف:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    المكان:

    • org هو اسم مؤسسة Edge (يجب أن تكون مشرف مؤسسة).
    • env هي بيئة في مؤسستك (مثل بيئة الاختبار أو الإنتاج).
    • key هو المفتاح الذي تم عرضه سابقًا من خلال الأمر configure.
    • secret هو المفتاح الذي تم عرضه سابقًا من خلال الأمر configure.

    مثال

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d

4. استدعاء واجهة برمجة التطبيقات بشكل آمن

بعد الحصول على رمز مميّز للوصول، يمكنك الآن طلب البيانات من واجهة برمجة التطبيقات بشكل آمن. على سبيل المثال:

  curl -i -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhcHBsaWNhdGlvbl
9uYW1lIjoiYmU2YmZjYjAtMWQ0Ni00Y2IxLWFiNGQtZTMxNzRlNTAyMDZkIiwiY2xpZW50X2lkIjoiOGxTTTVIRHdyM
VhIT1ZwbmhURExhYW9FVG5STVpwWk0iLCJzY29wZXMiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIk1pY3JvZ2F0ZXdh
eVRlQcm9kdWN0Il0sImCI6MTQzNTM0NzY5MiwiZXhwIjoxNDM1MzQ5NDkxfQ.PL30Y6uK1W1f2ONPEsBDB_BT31c6
IsjWGfwpz-p6Vak8r767tAT4mQAjuBpQYv7_IU4DxSrnxXQ_q536QYCP4p4YKfBvyqbnW0Rb2CsPFziy_n8HIczsWO
s0p4czcK63SjONaUpxV9DbfGVJ_-WrSdqrqJB5syorD2YYJPSfrCcgKm-LpJc6HCylElFDW8dHuwApaWcGRSV3l5Wx
4A8Rr-WhTIxDTX7TxkrfI4THgXAo37p3au3_7DPB_Gla5dWTzV4j93xLbXPUbwTHzpaUCFzmPnVuYM44FW5KgvBrV0
64RgPmIFUxSqBWGQU7Z1w2qFmWuaDljrMDoLEreI2g" http://localhost:8000/hello/echo

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

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

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

1. الحصول على مفتاح واجهة برمجة التطبيقات

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

2. التحقّق من الإعداد في Edge Microgateway

  1. افتح الملف $HOME/.edgemicro/org-env-config.yaml. See Where is Edge Microgateway installed إذا لم تتمكّن من العثور على هذا الملف.
  2. تأكَّد من ضبط خصائص المكوّن الإضافي oauth على false. تكون هذه القيم غير صحيحة تلقائيًا، ولكن يمكنك التحقّق منها إذا أردت:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
  3. في ملف org-env-config.yaml أيضًا، تأكَّد من إضافة المكوّن الإضافي oauth إلى العنصر plugins:sequence، كما يلي:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
        
  4. إذا أجريت أي تغييرات على الملف، عليك إعادة تحميل التغييرات إلى مثيل Edge Microgateway قيد التشغيل. يعيد هذا الأمر ضبط Edge Microgateway بدون أي توقّف:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    المكان:

    • org هو اسم مؤسسة Edge (يجب أن تكون مشرف مؤسسة).
    • env هي بيئة في مؤسستك (مثل بيئة الاختبار أو الإنتاج).
    • key هو المفتاح الذي تم عرضه سابقًا من خلال الأمر configure.
    • secret هو المفتاح الذي تم عرضه سابقًا من خلال الأمر configure.

    مثال

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c30177d64a88754d615c74e1f78b6181d

3. استدعاء واجهة برمجة التطبيقات بشكل آمن باستخدام مفتاح واجهة برمجة التطبيقات

يمكنك طلب بيانات من واجهة برمجة التطبيقات باستخدام عنوان x-api-key على النحو التالي. قيمة Consumer Key التي نسختها من تطبيق المطوّر هي مفتاح واجهة برمجة التطبيقات. تتوقّع Edge Microgateway بشكل تلقائي أن تمرِّر المفتاح في عنوان يُسمى x-api-key، على النحو التالي:

curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"

المكان:

  • apikey هي قيمة مفتاح المستهلك المأخوذة من EdgeMicroTestApp.

على سبيل المثال:


curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxd0ilYQ5szwuljr5bB'

أصبح لديك الآن Edge Microgateway يعمل بالكامل وآمن. في الجزء التالي من هذا البرنامج التعليمي، سنتعرّف على المكوّنات الإضافية التي تضيف وظائف إلى Edge Microgateway.

الجزء 5: إضافة مكوّن Spike Arrest الإضافي

في هذا الجزء، سنضيف ميزة الحدّ من معدّل الطلبات، وهي ميزة spike arrest، إلى مثيل Edge Microgateway.

ما هي المكوّنات الإضافية؟

المكوّن الإضافي هو وحدة Node.js تضيف وظائف إلى Edge Microgateway. تتّبع وحدات المكوّنات الإضافية نمطًا متسقًا ويتم تخزينها في موقع جغرافي معروف لـ Edge Microgateway، ما يتيح للمنتج اكتشافها وتحميلها تلقائيًا. يمكنك الاطّلاع على مزيد من المعلومات حول المكوّنات الإضافية في مقالة استخدام المكوّنات الإضافية.

إضافة مكوّن إضافي لإيقاف الارتفاع المفاجئ

إضافة إيقاف الارتفاع المفاجئ تحمي من الارتفاعات المفاجئة في عدد الزيارات. يحدّ من عدد الطلبات التي تتم معالجتها من خلال مثيل Edge Microgateway.

في Edge Microgateway، يتم تنفيذ ميزة "منع الارتفاع المفاجئ" كوحدة إضافية. لتفعيلها، عليك إضافتها إلى ملف إعدادات Edge Microgateway.

  1. افتح الملف $HOME/.edgemicro/org-env-config.yaml.Where is Edge Microgateway installed إذا لم تتمكّن من العثور على هذا الملف.
  2. أضِف العنصر التالي. يمكنك إضافته في أي مكان في الملف.
       spikearrest:
          timeUnit: minute   
          allow: 10   
          buffersize: 0   
  3. أضِف spikearrest إلى العنصر edgemicro:sequence، كما هو موضّح أدناه. تخبر خاصية إعداد التسلسل Edge Microgateway بالترتيب الذي يتم به تنفيذ وحدات المكوّن الإضافي.
    edgemicro:
      home: ../gateway
      port: 8000
      max_connections: -1
      max_connections_hard: -1
      logging:
        level: info
        dir: /var/tmp
        stats_log_interval: 60
      plugins:
        dir: ../plugins
      sequence:
        - oauth
        - spikearrest
  4. احفظ ملف الإعداد.
  5. أعِد تحميل Edge Microgateway باستخدام الأمر reload. يجب تنفيذ هذا الأمر من الدليل الذي بدأت منه Edge Microgateway.
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    المكان:

    • org هو اسم مؤسسة Edge (يجب أن تكون مشرفًا في المؤسسة).
    • env هي بيئة في مؤسستك (مثل بيئة الاختبار أو الإنتاج).
    • key هو المفتاح الذي تم عرضه سابقًا من خلال الأمر configure.
    • secret هو المفتاح الذي تم عرضه سابقًا من خلال الأمر configure.

    مثال

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
  6. حاوِل طلب البيانات من واجهة برمجة التطبيقات عدة مرات متتالية بسرعة. بعد المكالمة الثانية، يعرض Edge Microgateway الخطأ التالي:
    {"message":"SpikeArrest engaged","status":503}

والسبب هو أنّ ميزة "إيقاف الارتفاع المفاجئ" تعمل على تسوية عدد المكالمات التي يمكن إجراؤها خلال وحدة الوقت المحدّدة. في هذه الحالة، يمكنك إجراء 10 مكالمات في الدقيقة، أو مكالمة واحدة كل 6 ثوانٍ.

ميزة إضافية: إضافة المكوّن الإضافي للحصة

باتّباع النمط نفسه المستخدَم لضبط ميزة "منع الارتفاع المفاجئ"، يمكنك إضافة مكوّنات إضافية أخرى، مثل المكوّن الإضافي للحصة. كما هو الحال مع ميزة "منع الارتفاع المفاجئ"، يتم تضمين إضافة الحصة مع كل عملية تثبيت لـ Edge Microgateway. تحدّد الحصة عدد رسائل الطلبات التي يُسمح لتطبيق بإرسالها إلى واجهة برمجة تطبيقات خلال فترة زمنية محدّدة (بالدقائق أو الساعات).

الجزء 6: عرض الإحصاءات على Apigee Edge

لدينا الآن نسخة Edge Microgateway تعمل بكامل طاقتها، لنرَ ما فعلته. يتم تلقائيًا إضافة وحدة المكوّن الإضافي للإحصاءات إلى Edge Micro. تعمل هذه الوحدة على إرسال بيانات الإحصاءات بشكل غير ملحوظ من Edge Micro إلى Apigee Edge، حيث يستهلكها نظام Edge Analytics. إليك ما يلي:

  1. سجِّل الدخول إلى مؤسستك على Apigee Edge.
  2. اختَر الإحصاءات > أداء الخادم الوكيل.
  3. في لوحة بيانات "أداء الخادم الوكيل"، اختَر edgemicro_hello proxy.
  4. يعرض الرسم البياني معلومات حول أنماط الزيارات الخاصة بالخادم الوكيل، مثل إجمالي عدد الزيارات ومتوسط الوقت المستغرَق للردّ ومتوسط وقت الاستجابة المستهدَف وغير ذلك.

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