المشاكل المعروفة في Apigee

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

توضّح الأقسام التالية المشاكل المعروفة في Apigee Edge وEdge for Private Cloud. في معظم الحالات، سيتم حل المشاكل المُدرَجة في إصدار مستقبلي.

Miscellaneous Edge known issues

The following sections describe miscellaneous known issues with Edge.

Area/Summary Known issues
Cache expire results in incorrect cachehit value

When the cachehit flow variable is used after the LookupCache policy, due to the way debug points are dispatched for asynchronous behavior, the LookupPolicy populates the DebugInfo object before the call back has executed, resulting in an error.

Workaround: Repeat the process (make second call) again right after the first call.

Setting InvalidateCache Policy PurgeChildEntries to true does not work correctly

Setting PurgeChildEntries in the InvalidateCache policy should purge the KeyFragment element values only but clears the entire cache.

Workaround: Use the KeyValueMapOperations policy to iterate cache versioning and bypass the need for cache invalidation.

Concurrent deployment requests for a SharedFlow or API proxy can result in an inconsistent state in the Management Server where multiple revisions are shown as deployed.

This can happen, for example, when concurrent runs of a CI/CD deployment pipeline occur using different revisions. To avoid this problem, avoid deploying API proxies or SharedFlows before the current deployment is complete.

Workaround: Avoid concurrent API proxy or SharedFlow deployments.

API call counts shown in Edge API Analytics might contain duplicate data.

Edge API Analytics can sometimes contain duplicate data for API calls. In that case the counts shown for API calls in Edge API Analytics are higher than the comparable values shown in third-party analytics tools.

Workaround: Export the analytics data and use the gateway_flow_id field to de-duplicate the data.

Known issues with the Edge UI

The following sections describe the known issues with the Edge UI.

Area/Summary Known issues
Can't access Edge SSO Zone Administration page from navigation bar after organization is mapped to an identity zone

When you connect an organization to an identity zone, you can no longer access the Edge SSO Zone Administration page from the left navigation bar by selecting Admin > SSO.

Workaround: Navigate to the page directly using the following URL: https://apigee.com/sso

Edge UI TLS Configuration

The options TLS_DISABLED_ALGO and TLS_ENABLED_CIPHERS do not function correctly.

Workaround: Follow the steps below to enable specific ciphers for the Edge UI:

  1. Open the /opt/apigee/etc/edge-ui.d/SSL.sh config file.
  2. Add the property -Djdk.tls.server.cipherSuites with a comma-separated list of cipher suites in IANA notation inside the UI_OPTIONS. For example:
    UI_OPTIONS=" -Dhttp.port=disabled -Dhttps.port=9433 -Dhttps.keyStoreType=JKS -Dhttps.keyStore=/opt/apigee/customer/conf/keystore.jks -Dplay.http.sslengineprovider=services.CustomSSLEngineProvider -Dhttps.keyStorePasswordEncrypted=mypass -Djdk.tls.server.cipherSuites=TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384"
  3. Save your changes to the config file.
  4. Restart the Edge UI:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

المشاكل المعروفة في البوابة المدمجة

توضّح الأقسام التالية المشاكل المعروفة في البوابة المدمجة.

المساحة المشاكل المعروفة
SmartDocs
  • تتوافق Apigee Edge مع مواصفات OpenAPI 3.0 عند إنشاء المواصفات باستخدام محرِّر المواصفات و نشر واجهات برمجة التطبيقات باستخدام SmartDocs على البوابة، على الرغم من أنّ مجموعة فرعية من الميزات غير متاحة بعد.

    على سبيل المثال، الميزات التالية من مواصفات OpenAPI 3.0 غير متاحة بعد:

    • allOf خصائص لدمج المخططات وتوسيع نطاقها
    • المراجع البعيدة

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

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

  • عند استخدام ميزة "تجربة واجهة برمجة التطبيقات هذه" في البوابة، يتم ضبط رأس Accept على application/json بغض النظر عن القيمة التي تم ضبطها لـ consumes في مواصفات OpenAPI.
  • ‎138438484: لا تتوفّر إمكانية استخدام خوادم متعددة.
موفِّر الهوية عبر SAML لا تتوفّر ميزة "تسجيل الخروج الفردي" (SLO) باستخدام موفِّر الهوية SAML لنطاقات الويب المخصّصة. لتفعيل نطاق مخصّص باستخدام موفِّر هوية SAML، اترك الحقل عنوان URL لتسجيل الخروج فارغًا عند ضبط إعدادات SAML.
مشرف البوابة
  • لا تتوفّر حاليًا إمكانية إجراء تعديلات متزامنة على البوابة (مثل تعديلات الصفحة أو المظهر أو CSS أو النصوص البرمجية) من قِبل مستخدمين متعدّدين.
  • إذا حذفت صفحة مستندات مرجعية لواجهة برمجة التطبيقات من البوابة، لن تتمكّن من إعادة إنشائها. عليك حذف منتج واجهة برمجة التطبيقات وإعادة إضافته، ثم إعادة إنشاء مستندات مرجعية لواجهة برمجة التطبيقات.
  • عند ضبط سياسة أمان المحتوى، قد يستغرق تطبيق التغييرات بالكامل مدة تصل إلى 15 دقيقة.
  • عند تخصيص مظهر البوابة، قد يستغرق تطبيق التغييرات بالكامل مدة تصل إلى 5 دقائق.
ميزات البوابة الإلكترونية
  • سيتم دمج ميزة البحث في البوابة المدمجة في إصدار مستقبلي.

المشاكل المعروفة في Edge for Private Cloud

توضّح الأقسام التالية المشاكل المعروفة في Edge for Private Cloud.

منطقة المشاكل المعروفة
Edge for Private Cloud 4.53.01 تقييم الثغرات الأمنية في NGINX (CVE-2026-42945)

تم الكشف عن ثغرة أمنية (CVE-2026-42945) تؤثر في ngx_http_rewrite_module في NGINX. قد تضع أدوات فحص الأمان علامة على ملفات NGINX الثنائية المضمّنة في Apigee Edge Private Cloud لأنّ هذا النموذج يتم تجميعه بشكل ثابت في NGINX.

التأثير على Apigee Edge for Private Cloud:

لا تتأثر منصة Apigee Edge for Private Cloud بهذه الثغرة الأمنية في الإعدادات التلقائية التي يتم شحنها. تعتمد إمكانية استغلال الثغرة CVE-2026-42945 على أنماط إعدادات NGINX معيّنة، لا سيما استخدام الأمر rewrite في تسلسل معيّن. لا تتوفّر هذه الأنماط في أيّ من إعدادات NGINX العادية في Apigee Edge Private Cloud.

الإجراء المطلوب:

  • بالنسبة إلى إعدادات Apigee Edge for Private Cloud التلقائية: لا يلزم تطبيق أي تصحيحات أو ترقيات أو تغييرات تشغيلية. يمكن اعتبار نتائج الماسح الضوئي بشأن CVE-2026-42945 نتائج موجبة خاطئة لعمليات التثبيت التلقائية. يمكنك استخدام النص التالي لتسجيل هذا الاستثناء في نظام إدارة الثغرات الأمنية:

    CVE-2026-42945 — Accepted exception (false positive for Apigee Edge for Private Cloud). Apigee Edge for Private Cloud does not use the rewrite directive in any shipped NGINX configuration. The vulnerable code path in ngx_http_rewrite_module is configuration-gated and is not reachable in the default Apigee Edge for Private Cloud deployment.

  • بالنسبة إلى إعدادات NGINX المخصّصة: إذا عدّلت يدويًا ملفات إعدادات NGINX ضمن عملية تثبيت Apigee Edge للسحابة الخاصة (على سبيل المثال، ضمن /opt/nginx)، عليك إجراء عملية التحقّق الذاتي التالية للتأكّد من أنّ التخصيصات لم تؤدِّ إلى ظهور النمط المعرَّض للخطر عن غير قصد:
    1. التحقّق من توجيه إعادة الكتابة: على كل عقدة NGINX، شغِّل الأمر:
      sudo grep -rnI '^\s*rewrite\b' /opt/nginx
    2. تحليل النتائج:
      • إذا لم يعرض الأمر أي نتيجة، يعني ذلك أنّ نظامك غير مصاب.
      • في حال العثور على تطابقات، راجِع كل مثيل. لا تظهر الثغرة الأمنية إلا إذا تم استيفاء جميع الشروط التالية لكتلة معيّنة:
        • يتم استخدام التوجيه rewrite.
        • يتبعها مباشرةً توجيه rewrite أو if أو set آخر ضمن كتلة الإعداد نفسها.
        • يتم استخدام مجموعة التقاط PCRE بدون اسم (مثل $1 أو $2 أو غير ذلك) في التوجيهات.
        • تحتوي سلسلة الاستبدال في التوجيه على علامة استفهام (?).
    3. إجراءات التخفيف (في حال وجود ثغرة أمنية): إذا كانت جميع الشروط المذكورة أعلاه تنطبق على أي جزء من عملية الضبط المخصّصة، يمكنك اتّخاذ إجراءات التخفيف التالية:
      • إزالة علامة الاستفهام (?) من سلسلة الاستبدال
      • استخدام مجموعات الالتقاط المسماة في PCRE بدلاً من المجموعات غير المسماة
      • إعادة تقييم الحاجة إلى التوجيهات المتسلسلة
Edge for Private Cloud 4.53.00 ‫440148595: يتم عرض تحذير منبثق بشأن انتهاء العمر الافتراضي بشكل مفرط

في Edge for Private Cloud 4.53.00 والإصدارات الأحدث، تعرض واجهة المستخدم نافذة منبثقة تحذيرية بشأن"انتهاء العمر الافتراضي" (EOL). يظهر هذا التحذير
بشكل متكرّر ولا يمكن منعه أو تقليل عدد مرّات ظهوره.

لا تتوفّر حاليًا أي طريقة للمستخدمين لإيقاف تحذير انتهاء العمر الافتراضي هذا أو تقليل عدد مرات ظهوره.

Edge for Private Cloud 4.53.01 وسائل شرح Java

قد يتعذّر تنفيذ عمليات ربط Java المخصّصة التي تحاول تحميل موفّر التشفير Bouncy Castle باستخدام الاسم "BC"، لأنّه تم تغيير الموفّر التلقائي إلى Bouncy Castle FIPS من أجل توفير دعم لمعيار FIPS. اسم مقدّم الخدمة الجديد الذي سيتم استخدامه هو "BCFIPS".

Edge for Private Cloud 4.53.00 وسائل شرح Java

قد يتعذّر تنفيذ عمليات ربط Java المخصّصة التي تحاول تحميل موفّر التشفير Bouncy Castle باستخدام الاسم "BC"، لأنّه تم تغيير الموفّر التلقائي إلى Bouncy Castle FIPS من أجل توفير دعم لمعيار FIPS. اسم مقدّم الخدمة الجديد الذي سيتم استخدامه هو "BCFIPS".

تحديث Mint في Edge for Private Cloud 4.52.01

لا تؤثّر هذه المشكلة إلا في المستخدمين الذين يستخدمون MINT أو فعّلوا MINT في عمليات تثبيت Edge for Private Cloud.

المكوّن المتأثر: edge-message-processor

المشكلة: إذا كانت ميزة تحقيق الربح مفعّلة وكنت بصدد تثبيت الإصدار 4.52.01 كتثبيت جديد أو الترقية من إصدارات Private Cloud السابقة، ستواجه مشكلة في معالجات الرسائل. سيحدث ارتفاع تدريجي في عدد سلاسل المحادثات المفتوحة ما يؤدي إلى استنفاد الموارد. يظهر الاستثناء التالي في ملف system.log الخاص بـ edge-message-processor:

Error injecting constructor, java.lang.OutOfMemoryError: unable to create new native thread
ثغرة أمنية في بروتوكول HTTP/2 في Apigee

تم مؤخرًا رصد ثغرة أمنية تؤدي إلى حجب الخدمة (DoS) في عمليات تنفيذ متعددة لبروتوكول HTTP/2 (CVE-2023-44487)، بما في ذلك في Apigee Edge للسحابة الخاصة. ويمكن أن تؤدي الثغرة الأمنية إلى حجب وظائف إدارة واجهة برمجة التطبيقات في Apigee. لمزيد من التفاصيل، يُرجى الاطّلاع على نشرة أمان Apigee GCP-2023-032.

تكون مكوّنات جهاز التوجيه وخادم الإدارة في Edge for Private Cloud معرَّضة للإنترنت، وقد تكون عرضة للخطر. على الرغم من تفعيل بروتوكول HTTP/2 على منفذ الإدارة الخاص بمكوّنات Edge الأخرى المخصّصة لـ Edge for Private Cloud، لا يتم عرض أي من هذه المكوّنات على الإنترنت. في المكوّنات غير التابعة لـ Edge، مثل Cassandra وZookeeper وغيرها، لا يتم تفعيل HTTP/2. ننصحك باتّخاذ الخطوات التالية لمعالجة الثغرة الأمنية في Edge for Private Cloud:

اتّبِع الخطوات التالية إذا كنت تستخدم الإصدار 4.51.00.11 أو إصدارًا أحدث من Edge Private Cloud:

  1. تعديل خادم الإدارة:

    1. في كل عقدة من عقد خادم الإدارة، افتح /opt/apigee/customer/application/management-server.properties
    2. أضِف هذا السطر إلى ملف السمات:
      conf_webserver_http2.enabled=false
    3. أعِد تشغيل مكوّن خادم الإدارة:
      apigee-service edge-management-server restart
  2. تعديل معالج الرسائل:

    1. في كل عقدة لمعالجة الرسائل، افتح /opt/apigee/customer/application/message-processor.properties
    2. أضِف هذا السطر إلى ملف السمات:
      conf_webserver_http2.enabled=false
    3. أعِد تشغيل مكوّن معالجة الرسائل:
      apigee-service edge-message-processor restart
  3. تحديث جهاز التوجيه:

    1. على كل عقدة جهاز توجيه، افتح /opt/apigee/customer/application/router.properties
    2. أضِف هذا السطر إلى ملف السمات:
      conf_webserver_http2.enabled=false
    3. أعِد تشغيل مكوّن معالجة الرسائل:
      apigee-service edge-router restart
  4. تعديل QPID:

    1. على كل عقدة QPID، افتح /opt/apigee/customer/application/qpid-server.properties
    2. أضِف هذا السطر إلى ملف السمات:
      conf_webserver_http2.enabled=false
    3. أعِد تشغيل مكوّن معالجة الرسائل:
      apigee-service edge-qpid-server restart
  5. تحديث Postgres:

    1. في كل عقدة Postgres، افتح /opt/apigee/customer/application/postgres-server.properties
    2. أضِف هذا السطر إلى ملف السمات:
      conf_webserver_http2.enabled=false
    3. أعِد تشغيل مكوّن معالجة الرسائل:
      apigee-service edge-postgres-server restart

اتّبِع الخطوات التالية إذا كنت تستخدم إصدارات Edge for Private Cloud الأقدم من 4.51.00.11:

  1. تعديل خادم الإدارة:

    1. في كل عقدة من عقد خادم الإدارة، افتح /opt/apigee/customer/application/management-server.properties
    2. أضِف السطرين التاليين إلى ملف السمات:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. أعِد تشغيل مكوّن خادم الإدارة:
      apigee-service edge-management-server restart
  2. تعديل معالج الرسائل:

    1. في كل عقدة لمعالجة الرسائل، افتح /opt/apigee/customer/application/message-processor.properties
    2. أضِف السطرين التاليين إلى ملف السمات:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. أعِد تشغيل مكوّن معالجة الرسائل:
      apigee-service edge-message-processor restart
  3. تحديث جهاز التوجيه:

    1. على كل عقدة جهاز توجيه، افتح /opt/apigee/customer/application/router.properties
    2. أضِف السطرين التاليين إلى ملف السمات:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. أعِد تشغيل مكوّن معالجة الرسائل:
      apigee-service edge-router restart
  4. تعديل QPID:

    1. في كل عقدة QPID، افتح /opt/apigee/customer/application/qpid-server.properties
    2. أضِف السطرين التاليين إلى ملف السمات:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. أعِد تشغيل مكوّن معالجة الرسائل:
      apigee-service edge-qpid-server restart
  5. تحديث Postgres:

    1. في كل عقدة Postgres، افتح /opt/apigee/customer/application/postgres-server.properties
    2. أضِف السطرين التاليين إلى ملف السمات:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. أعِد تشغيل مكوّن معالجة الرسائل:
      apigee-service edge-postgres-server restart
ترقية Postgresql عند التحديث إلى الإصدار 4.52

تواجه Apigee-postgresql مشاكل في الترقية من الإصدار 4.50 أو 4.51 إلى الإصدار 4.52 من Edge for Private Cloud. تحدث المشاكل بشكل أساسي عندما يكون عدد الجداول أكبر من 500.

يمكنك التحقّق من إجمالي عدد الجداول في Postgres من خلال تنفيذ طلب بحث SQL أدناه:

select count(*) from information_schema.tables

الحل البديل: عند تحديث Apigee Edge من الإصدار 4.50.00 أو 4.51.00 إلى الإصدار 4.52.00، احرص على تنفيذ الخطوة التمهيدية قبل ترقية Apigee-postgresql.

سياسة LDAP

‫149245401: لا تظهر إعدادات مجموعة اتصالات LDAP لـ JNDI التي تم ضبطها من خلال مورد LDAP، وتتسبّب إعدادات JNDI التلقائية في إنشاء اتصالات للاستخدام الفردي في كل مرة. ونتيجةً لذلك، يتم فتح الاتصالات وإغلاقها في كل مرة لاستخدامها مرة واحدة، ما يؤدي إلى إنشاء عدد كبير من الاتصالات في الساعة بخادم LDAP.

الحل:

لتغيير خصائص مجموعة اتصالات LDAP، اتّبِع الخطوات التالية لإجراء تغيير عام على مستوى جميع سياسات LDAP.

  1. أنشئ ملفًا لخصائص الإعداد إذا لم يكن متوفّرًا:
    /opt/apigee/customer/application/message-processor.properties
  2. أضِف ما يلي إلى الملف (استبدِل قيم خصائص Java Naming and Directory Interface (JNDI) استنادًا إلى متطلبات إعداد مورد LDAP).
    bin_setenv_ext_jvm_opts="-Dcom.sun.jndi.ldap.connect.pool.maxsize=20
    -Dcom.sun.jndi.ldap.connect.pool.prefsize=2
    -Dcom.sun.jndi.ldap.connect.pool.initsize=2
    -Dcom.sun.jndi.ldap.connect.pool.timeout=120000
    -Dcom.sun.jndi.ldap.connect.pool.protocol=ssl"
  3. تأكَّد من أنّ الملف /opt/apigee/customer/application/message-processor.properties مملوك للمستخدم apigee:apigee.
  4. أعِد تشغيل كل معالج رسائل.

للتحقّق من أنّ خصائص JNDI لمجموعة الاتصالات سارية، يمكنك تنفيذ tcpdump لمراقبة سلوك مجموعة اتصالات LDAP بمرور الوقت.

وقت استجابة طويل لمعالجة الطلبات

‫139051927: تم رصد حالات تأخير كبيرة في معالجة الخادم الوكيل في "معالج الرسائل"، ما يؤثر في جميع خوادم API الوكيلة. تشمل الأعراض تأخيرات تتراوح بين 200 و300 ملي ثانية في أوقات المعالجة مقارنةً بأوقات الاستجابة العادية لواجهة برمجة التطبيقات، ويمكن أن تحدث بشكل عشوائي حتى مع انخفاض عدد المعاملات في الثانية. ويمكن أن يحدث ذلك عند توفّر أكثر من 50 خادم مستهدف يربط به "معالج الرسائل".

السبب الأساسي: تحتفظ معالجات الرسائل بذاكرة تخزين مؤقت تربط عنوان URL الخاص بالخادم المستهدَف بكائن HTTPClient للاتصالات الصادرة إلى الخوادم المستهدَفة. يتم ضبط هذا الإعداد تلقائيًا على 50، وهو ما قد يكون منخفضًا جدًا بالنسبة إلى معظم عمليات النشر. عندما يتضمّن عملية النشر عدة مجموعات من المؤسسات/البيئات في عملية الإعداد، ويكون هناك عدد كبير من الخوادم المستهدَفة التي تتجاوز 50 خادمًا إجمالاً، يتم إزالة عناوين URL الخاصة بالخوادم المستهدَفة من ذاكرة التخزين المؤقت باستمرار، ما يؤدي إلى حدوث حالات تأخير.

التحقّق: لتحديد ما إذا كان إخلاء عناوين URL الخاصة بالخادم المستهدف يتسبّب في مشكلة وقت الاستجابة، ابحث في system.logs الخاصة بـ Message Processor عن الكلمة الرئيسية "onEvict" أو "Eviction". يشير ظهورها في السجلات إلى أنّه يتم إخلاء عناوين URL الخاصة بالخادم المستهدف من ذاكرة التخزين المؤقت HTTPClient لأنّ حجم ذاكرة التخزين المؤقت صغير جدًا.

الحل البديل: بالنسبة إلى الإصدارَين 19.01 و19.06 من Edge for Private Cloud، يمكنك تعديل ذاكرة التخزين المؤقت لـ HTTPClient وضبطها، /opt/apigee/customer/application/message-processor.properties:

conf/http.properties+HTTPClient.dynamic.cache.elements.size=500

بعد ذلك، أعِد تشغيل معالج الرسائل. أجرِ التغييرات نفسها على جميع معالِجات الرسائل.

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

ملاحظة: يحتوي الإصدار 50.00 من Edge for Private Cloud على الإعداد التلقائي 500.

إدخالات متعدّدة لخرائط قيم المفاتيح

‫157933959: تؤدي عمليات الإدراج والتعديل المتزامنة لخريطة قيم المفاتيح (KVM) نفسها التي تم تحديد نطاقها على مستوى المؤسسة أو البيئة إلى بيانات غير متّسقة وتعديلات مفقودة.

ملاحظة: ينطبق هذا القيد فقط على Edge for Private Cloud، ولا ينطبق على Edge for Public Cloud والبيئات المختلطة.

لحلّ بديل في Edge for Private Cloud، أنشئ آلة KVM في نطاق apiproxy.