أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى
مستندات Apigee X. info
في بعض الأحيان، قد تحتاج إلى تخزين البيانات لاسترجاعها في وقت التشغيل، أي البيانات التي لا تنتهي صلاحيتها والتي لا يجب ترميزها بشكل ثابت في منطق خادم وكيل واجهة برمجة التطبيقات. تُعدّ خرائط القيم الرئيسية (KVM) مثالية لذلك. مجموعة KVM هي مجموعة مخصّصة من أزواج السلاسل التي تتضمّن مفتاحًا وقيمة، وتكون إما مشفّرة أو غير مشفّرة. وإليك مثالان:

لمعرفة المزيد عن الأنواع الأخرى من الثبات، يُرجى الاطّلاع على إضافة التخزين المؤقت والثبات.
سيناريوهات KVM
في ما يلي بعض الحالات التي تكون فيها لوحات مفاتيح الفيديو والماوس مفيدة:
- لديك خادم وكيل لواجهة برمجة التطبيقات يحتاج إلى استدعاء عنوان URL واحد مستهدف (أو Service Callout) في بيئة اختبار وعنوان URL مستهدف آخر في بيئة إنتاج. بدلاً من الترميز الثابت لعناوين URL في الخادم الوكيل، يمكنك أن يكتشف الخادم الوكيل البيئة التي يعمل فيها، وينفّذ سياسة عمليات "خريطة القيم الرئيسية" ذات الصلة، ويسترد عنوان URL الصحيح المستهدف من إحدى خرائط القيم الرئيسية التي أنشأتها. وفي وقت لاحق، إذا تغيّر أحد الهدفَين أو كلاهما، ما عليك سوى تعديل خرائط القيم الرئيسية باستخدام عناوين URL الجديدة. سيسترد الخادم الوكيل القيم الجديدة، ولن تحتاج إلى إعادة نشر الخادم الوكيل.
- تريد تخزين بيانات الاعتماد أو المفاتيح الخاصة أو الرموز المميزة، مثل الرموز المميزة للخدمات الخارجية أو بيانات الاعتماد المطلوبة لإنشاء رموز OAuth المميزة أو المفاتيح الخاصة المستخدَمة في Java Callouts أو JavaScript للتشفير أو توقيع JSON Web Token (JWT). بدلاً من تمرير بيانات الاعتماد أو المفاتيح أو الرموز المميزة في الطلب، أو ترميزها بشكل ثابت في منطق الخادم الوكيل، يمكنك تخزينها في KVM (يتم تشفيرها دائمًا) واستردادها ديناميكيًا في الطلبات التي يتم إرسالها إلى الأهداف التي تتطلبها.
ستكتشف حالات أخرى يكون فيها تخزين أزواج المفتاح/القيمة من النوع String مفيدًا. بشكل عام، ننصحك باستخدام أجهزة KVM في الحالات التالية:
- تتطلّب أماكن محدّدة في الرمز قيمًا مختلفة في وقت التشغيل.
- يجب تمرير البيانات الحسّاسة بدون ترميزها بشكل ثابت.
- تريد تخزين قيم لا تنتهي صلاحيتها كما قد يحدث في ذاكرة التخزين المؤقت.
تتضمّن خرائط القيم الرئيسية نطاقًا
يشير النطاق إلى "المكان الذي يتوفّر فيه جهاز KVM". يمكن إنشاء KVM في النطاقات التالية:
organization وenvironment وapiproxy.
على سبيل المثال، إذا كان وكيل واجهة برمجة تطبيقات واحد فقط يتطلّب بيانات في خريطة قيم المفاتيح، يمكنك إنشاء خريطة قيم المفاتيح في النطاق apiproxy، حيث يمكن لوكيل واجهة برمجة التطبيقات هذا فقط الوصول إلى البيانات.
أو قد تريد أن تتمكّن جميع خوادم وكيل واجهة برمجة التطبيقات في بيئة الاختبار من الوصول إلى خريطة قيم المفاتيح، وفي هذه الحالة، عليك إنشاء خريطة قيم المفاتيح على مستوى البيئة. لا يمكن للخوادم الوكيلة التي تم نشرها في بيئة "prod" الوصول إلى خرائط المفاتيح والقيم (KVM) في نطاق بيئة "test". إذا كنت تريد توفير مفاتيح KVM نفسها في بيئة الإنتاج، أنشئ مفاتيح KVM موازية ضمن نطاق بيئة "prod".
إذا كنت تريد أن تتمكّن جميع الخوادم الوكيلة في جميع البيئات من الوصول إلى KVM نفسه، أنشئ KVM في النطاق organization.
لمحة عن أجهزة KVM المشفَّرة
يتم تشفير خرائط القيمة الرئيسية باستخدام مفتاح تشفير AES-128 من إنشاء Apigee. يتم تخزين المفتاح المستخدَم لتشفير KVM في نطاق KVM. على سبيل المثال، ضمن مؤسسة، يتم إنشاء جميع أجهزة KVM المشفّرة التي تنشئها على مستوى البيئة باستخدام المفتاح نفسه على مستوى البيئة.
يتعامل Edge مع عرض القيم المشفرة بالطرق التالية. (راجِع إدارة خرائط القيمة الرئيسية واستخدامها للحصول على معلومات حول إنشاء خرائط قيمة رئيسية مشفّرة).
واجهة مستخدم Edge
تعرض خرائط قيم المفاتيح المشفرة قيمًا مخفية بعلامات نجمية في واجهة المستخدم (*****). على سبيل المثال:

واجهة برمجة تطبيقات الإدارة
في Management API، يتم إرجاع القيم المشفرة مع إخفاء هويتها. في ما يلي نموذج لردّ واجهة برمجة التطبيقات الخاصة بالإدارة على طلب Get encrypted KVM:
{
"encrypted": true,
"entry": [
{
"name": "Key1",
"value": "*****"
},
{
"name": "Key2",
"value": "*****"
}
],
"name": "secretMap"
}تتبُّع الأخطاء وتصحيحها
عند استخدام سياسة عمليات ربط المفتاح بالقيمة
لاسترداد قيم KVM مشفّرة، عليك تقديم اسم متغيّر لتخزين
القيمة. للحصول على قيمة مشفّرة، عليك إضافة البادئة "private." إلى اسم المتغيّر، ما يمنع ظهور مفاتيح/قيم KVM في جلسات "التتبُّع" و"تصحيح الأخطاء".
الحدود
في المؤسسات التي تم فيها تفعيل خدمات Core Persistence Services (CPS):
- اسم/معرّف KVM حسّاس لحالة الأحرف.
- يقتصر حجم المفتاح على 2 كيلوبايت.
- يقتصر حجم القيمة على 10 كيلوبايت.
بالنسبة إلى Apigee Edge for Private Cloud، يجب ألا يتجاوز حجم كل خريطة لقيم المفاتيح (KVM) 15 ميغابايت (هذا هو الحجم المجمّع للمفاتيح والقيم). في حال تجاوزت هذا الحدّ، ستعرض Apigee Edge for Private Cloud رسالة خطأ. لتحديد حجم أجهزة KVM، يمكنك استخدام الأمر nodetool cfstats.
يمكن أن تؤدي أجهزة KVM الأكبر حجمًا إلى انخفاض مستوى الأداء. نتيجةً لذلك، عليك تقسيم وحدات KVM الكبيرة والمتكاملة إلى وحدات أصغر لتحسين الأداء.
إدارة واستخدام الأجهزة الافتراضية المستندة إلى KVM
يمكنك إنشاء مقاييس الأداء الرئيسية وإدارتها واستخدامها بطرق مختلفة. يوضّح هذا القسم الخيارات المختلفة لإنشاء ثم استرداد كل من مقاييس أداء الجهاز الظاهري المشفّرة وغير المشفّرة.
إنشاء أجهزة KVM وتعديلها
يمكنك إنشاء قيم مفتاحية وتعديلها بالطرق التالية:
-
سياسة عمليات "خريطة القيم الرئيسية" (بدون تشفير)
لإنشاء وتعديل خرائط KVM في وقت التشغيل من خلال خوادم وكيلة لواجهة برمجة التطبيقات، استخدِم سياسة عمليات خريطة القيم الرئيسية. (في السياسة، يمكنك تحديد اسم KVM في السمة
mapIdentifierضمن العنصر الرئيسي).يتيح لك العنصر
<InitialEntries>إنشاء مجموعة أساسية من الإدخالات وتعبئتها في KVM جديد بمجرد حفظ السياسة في واجهة المستخدم أو نشر خادم وكيل لواجهة برمجة التطبيقات (في حال تطويره بلا إنترنت). إذا تغيّرت القيم في السياسة، سيتم استبدال القيم الحالية. تتم إضافة أي مفاتيح/قيم جديدة إلى KVM الحالية بجانب المفاتيح/القيم الحالية.ينشئ العنصر
<Put>مخزنًا جديدًا لخرائط المفاتيح والقيم إذا لم يكن هناك مخزن حالي، وينشئ مفتاحًا بقيمة واحدة أو أكثر. إذا كان KVM متوفّرًا، تتم إضافة المفتاح/القيم (أو تعديلها إذا كان المفتاح متوفّرًا). يمكنك استخدام عناصر<Put>متعددة في سياسة KVM. -
Management API
تُستخدَم واجهة برمجة التطبيقات الإدارية للتعامل مع خرائط القيمة الرئيسية كمسؤول بدلاً من استخدامها أثناء وقت التشغيل في خوادم وكيل واجهة برمجة التطبيقات. على سبيل المثال، قد يكون لديك نص برمجي داخلي يستخدم واجهة برمجة التطبيقات الإدارية لحذف وإعادة إنشاء خرائط KVM في بيئة اختبار، أو قد تريد إعادة ضبط قيمة مفتاح في خريطة KVM لكي تستخدمها جميع الخوادم الوكيلة. (للتعديل على خرائط قيم المفاتيح في وقت التشغيل، استخدِم سياسة عمليات خريطة قيم المفاتيح في الخوادم الوكيلة).
تتيح لك واجهة برمجة التطبيقات لإدارة خرائط المفاتيح/القيم إنشاء خرائط مفاتيح/قيم مشفّرة وتعديلها وحذفها على جميع النطاقات (المؤسسة والبيئة وapiproxy).
لإنشاء KVM مشفّر باستخدام Management API، أضِف
"encrypted" : "true"إلى حمولة JSON. لا يمكنك تشفير مفاتيح إدارة التشفير إلا عند إنشائها. لا يمكنك تشفير جهاز KVM حالي. -
واجهة مستخدم الإدارة
في واجهة مستخدم إدارة Edge، يمكنك إنشاء وتعديل مفاتيح/قيم مخزّنة على مستوى البيئة، وهي النطاق الوحيد لمفاتيح/قيم مخزّنة الذي يظهر في واجهة المستخدم. تُعدّ واجهة مستخدم الإدارة طريقة جيدة لإدارة بيانات KVM يدويًا لخوادم وكيل API في وقت التشغيل. لمزيد من المعلومات، يُرجى الاطّلاع على إنشاء خرائط قيم مفاتيح البيئة وتعديلها.
استرداد مقاييس الأداء الرئيسية
يمكنك استرداد خرائط قيم المفاتيح المشفرة وغير المشفرة بالطريقة نفسها، مع اختلاف بسيط عند الاسترداد باستخدام سياسة عمليات خريطة قيم المفاتيح.
- السياسة: استخدِم العنصر
<Get>في سياسة عمليات خريطة القيم الرئيسية لاسترداد خرائط القيم الرئيسية المشفّرة وغير المشفّرة. الاختلاف الوحيد الطفيف هو استرداد القيم المشفّرة باستخدام السياسة، حيث يجب إضافة البادئة "private." إلى اسم المتغيّر الذي سيحتوي على القيمة المستردّة، كما هو موضّح في قسم عملية Get من موضوع المرجع. يخفي هذا البادئة القيمة من جلسات "التتبُّع والتصحيح" أثناء تصحيح أخطاء خوادم وكيل واجهة برمجة التطبيقات. - Management API: لأغراض الإدارة، يمكنك استخدام إنشاء خرائط قيم مفاتيح البيئة وتعديلها للحصول على خرائط قيم مفاتيح ومفاتيح/قيم. على سبيل المثال، إذا كنت تريد الاحتفاظ بنسخة احتياطية من خرائط القيمة الرئيسية (KVM) من خلال الحصول على تعريفات JSON وتخزينها، استخدِم واجهة برمجة التطبيقات الإدارية. يُرجى العِلم أنّ القيم المشفرة تظهر على شكل ***** في الردّ من واجهة برمجة التطبيقات.
- واجهة مستخدم الإدارة: يمكنك عرض خرائط قيم المفاتيح التي تخص بيئتك في واجهة مستخدم الإدارة من خلال الانتقال إلى واجهات برمجة التطبيقات > إعدادات البيئة > خرائط قيم المفاتيح (Classic Edge) أو المشرف > البيئات > خرائط قيم المفاتيح (New Edge).
مثال على KVM
للاطّلاع على مثال حول استخدام KVM لملء القيم في عنوان URL، راجِع إنشاء نموذج لعنوان URL المستهدف باستخدام KVM حسب البيئة.