Problèmes connus concernant Apigee

Vous consultez la documentation d'Apigee Edge.
Accédez à la documentation sur Apigee X.
info

Les sections suivantes décrivent les problèmes connus liés à Apigee. Dans la plupart des cas, les problèmes répertoriés seront résolus dans une prochaine version.

Divers problèmes connus avec Edge

Les sections suivantes décrivent divers problèmes connus liés à Edge.

Zone/Récapitulatif Problèmes connus
L'expiration du cache entraîne une valeur cachehit incorrecte

Lorsque la variable de flux cachehit est utilisée après la règle LookupCache, en raison de la manière dont les points de débogage sont distribués pour le comportement asynchrone, LookupPolicy renseigne l'objet DebugInfo avant l'exécution du rappel, ce qui entraîne une erreur.

Solution:répétez la procédure (passez un deuxième appel) juste après le premier appel.

Définir la règle InvalidateCache PurgeChildEntries sur "true" ne fonctionne pas correctement

Définir PurgeChildEntries dans la règle InvalidateCache devrait supprimer définitivement les valeurs de l'élément KeyFragment uniquement, mais vide l'intégralité du cache.

Solution de contournement:utilisez la règle KeyValueMapOperations pour itérer la gestion des versions du cache et éviter d'avoir à invalider le cache.

Les requêtes de déploiement simultanés pour un flux SharedFlow ou un proxy d'API peuvent entraîner un état incohérent sur le serveur de gestion, où plusieurs révisions sont affichées comme étant déployées.

Cela peut se produire, par exemple, en cas d'exécutions simultanées d'un pipeline de déploiement CI/CD qui exploitent des révisions différentes. Pour éviter ce problème, évitez de déployer des proxys d'API ou des flux SharedFlow avant la fin du déploiement actuel.

Solution:Évitez les déploiements simultanés de proxys d'API ou de flux SharedFlow.

Les nombres d'appels d'API affichés dans Edge API Analytics peuvent contenir des données en double.

L'API Analytics Edge peut parfois contenir des données en double pour les appels d'API. Dans ce cas, les totaux affichés pour les appels d'API dans Edge API Analytics sont supérieurs aux valeurs comparables affichées dans les outils d'analyse tiers.

Solution:Exportez les données d'analyse et utilisez le champ gateway_flow_id pour dédupliquer les données.

Problèmes connus avec l'interface utilisateur Edge

Les sections suivantes décrivent les problèmes connus liés à l'interface utilisateur Edge.

Zone Problèmes connus
Impossible d'accéder à la page d'administration de la zone d'authentification unique Edge à partir de la barre de navigation une fois l'organisation associée à une zone d'identité Lorsque vous connectez une organisation à une zone d'identité, vous ne pouvez plus accéder à la page Administration des zones d'authentification unique d'Edge dans la barre de navigation de gauche en sélectionnant Administrateur > Authentification unique. Pour contourner ce problème, accédez directement à la page à l'aide de l'URL suivante: https://apigee.com/sso.

Problèmes connus liés au portail intégré

Les sections suivantes décrivent les problèmes connus liés au portail intégré.

Zone Problèmes connus
SmartDocs
  • Apigee Edge est compatible avec la spécification OpenAPI 3.0 lorsque vous créez des spécifications à l'aide de l'éditeur de spécifications et publiez des API à l'aide de SmartDocs sur votre portail, mais un sous-ensemble de fonctionnalités n'est pas encore compatible.

    Par exemple, les fonctionnalités suivantes de la spécification OpenAPI 3.0 ne sont pas encore compatibles :

    • Propriétés allOf pour la combinaison et l'extension des schémas
    • Références distantes

    Si une fonctionnalité incompatible est référencée dans votre Spécification OpenAPI, il arrive que les outils ignorent la fonctionnalité, mais affichent toujours la documentation de référence de l'API. Dans d'autres cas, une fonctionnalité incompatible peut entraîner des erreurs empêchant l'affichage de la documentation de référence de l'API. Dans les deux cas, vous devez modifier votre Spécification OpenAPI afin d'éviter d'utiliser la fonctionnalité non compatible jusqu'à ce qu'elle soit prise en charge dans une version ultérieure.

    Remarque: Étant donné que l'éditeur de spécifications est moins restrictif que SmartDocs lors de l'affichage de la documentation de référence de l'API, les résultats peuvent varier entre les outils.

  • Lorsque vous utilisez cette API dans le portail, l'en-tête Accept est défini sur application/json, quelle que soit la valeur définie pour consumes dans la spécification OpenAPI.
  • 138438484 : Plusieurs serveurs ne sont pas acceptés.
Fournisseur d'identité SAML La déconnexion unique (SLO) avec le fournisseur d'identité SAML n'est pas disponible pour les domaines personnalisés. Pour activer un domaine personnalisé avec un fournisseur d'identité SAML, laissez le champ Sign-out URL (URL de déconnexion) vide lorsque vous configurez les paramètres SAML.
Administrateur de portail
  • Pour le moment, les mises à jour simultanées du portail (telles que les modifications de pages, de thèmes, de CSS ou de scripts) par plusieurs utilisateurs ne sont pas acceptées.
  • Si vous supprimez une page de documentation de référence de l'API à partir du portail, vous ne pouvez pas la recréer. Vous devrez supprimer et rajouter le produit d'API, puis générer à nouveau la documentation de référence de l'API.
  • Lorsque vous configurez la stratégie de sécurité du contenu, il peut s'écouler jusqu'à 15 minutes avant que les modifications ne soient appliquées.
  • Lorsque vous personnalisez le thème de votre portail, un délai de cinq minutes peut être nécessaire pour que les modifications soient appliquées.
Fonctionnalités du portail
  • La recherche sera ajoutée au portail intégré dans une prochaine version.

Problèmes connus avec Edge pour le cloud privé

Les sections suivantes décrivent les problèmes connus liés à Edge pour le cloud privé.

Quartier Problèmes connus
Edge pour le cloud privé 4.53.01 Évaluation des failles NGINX (CVE-2026-42945)

Une faille (CVE-2026-42945) a été détectée dans le ngx_http_rewrite_module de NGINX. Les outils d'analyse de sécurité peuvent signaler les binaires NGINX inclus dans Apigee Edge pour le cloud privé, car ce module est compilé de manière statique dans NGINX.

Impact sur Apigee Edge pour le cloud privé :

Apigee Edge pour le cloud privé n'est pas affecté par cette faille dans sa configuration par défaut. L'exploitabilité de la faille CVE-2026-42945 dépend de modèles de configuration NGINX spécifiques, notamment de l'utilisation de la directive rewrite dans une séquence particulière. Ces modèles ne sont présents dans aucune configuration NGINX standard d'Apigee Edge pour le cloud privé.

Action requise :

  • Pour les configurations par défaut d'Apigee Edge pour le cloud privé : aucun correctif, mise à niveau ni modification opérationnelle n'est requis. Les résultats de l'analyse concernant la faille CVE-2026-42945 peuvent être traités comme des faux positifs pour les installations par défaut. Vous pouvez utiliser le texte suivant pour documenter cette exception dans votre système de gestion des failles :

    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.

  • Pour les configurations NGINX personnalisées : si vous avez modifié manuellement les fichiers de configuration NGINX dans votre installation Apigee Edge pour le cloud privé (par exemple, sous /opt/nginx), vous devez effectuer l'auto-vérification suivante pour vous assurer que vos personnalisations n'ont pas introduit par inadvertance le modèle vulnérable :
    1. Recherchez la directive de réécriture : sur chaque nœud NGINX, exécutez la commande :
      sudo grep -rnI '^\s*rewrite\b' /opt/nginx
    2. Analyser les résultats :
      • Si la commande ne renvoie aucun résultat, votre système n'est pas affecté.
      • Si des correspondances sont trouvées, examinez chaque instance. La faille est présente uniquement si toutes les conditions suivantes sont remplies pour un bloc donné :
        • La directive rewrite est utilisée.
        • Elle est immédiatement suivie d'une autre directive rewrite, if ou set dans le même bloc de configuration.
        • Un groupe de capture PCRE sans nom (par exemple, $1, $2, etc.) est utilisé dans les directives.
        • La chaîne de remplacement dans la directive contient un point d'interrogation (?).
    3. Atténuation (si vulnérable) : si toutes les conditions ci-dessus sont remplies pour une partie de votre configuration personnalisée, atténuez le problème en procédant comme suit :
      • Supprimez le point d'interrogation (?) de la chaîne de remplacement.
      • Utilisez des groupes de capture PCRE nommés au lieu de groupes sans nom.
      • Réévaluez la nécessité des directives enchaînées.
Edge pour le cloud privé 4.53.00 440148595 : l'avertissement pop-up de fin de vie s'affiche de manière excessive

Dans Edge pour le cloud privé 4.53.00 et versions ultérieures, l'interface utilisateur affiche un "pop-up d'avertissement de fin de vie" (EOL). Cet avertissement s'affiche
de manière répétée et ne peut pas être empêché ni réduit en fréquence.

Aucune méthode n'est actuellement disponible pour les utilisateurs afin de désactiver ou de réduire la fréquence de cet avertissement de fin de vie.

Edge pour le cloud privé 4.53.01
Appels Java

Les appels Java client qui tentent de charger le fournisseur de chiffrement Bouncy Castle à l'aide du nom "BC" peuvent échouer, car le fournisseur par défaut a été remplacé par Bouncy Castle FIPS pour prendre en charge FIPS. Le nouveau nom de fournisseur à utiliser est "BCFIPS".

Edge pour le cloud privé 4.53.00
Appels Java

Les appels Java client qui tentent de charger le fournisseur de chiffrement Bouncy Castle à l'aide du nom "BC" peuvent échouer, car le fournisseur par défaut a été remplacé par Bouncy Castle FIPS pour prendre en charge FIPS. Le nouveau nom de fournisseur à utiliser est "BCFIPS".

Mise à jour Mint d'Edge pour le cloud privé 4.52.01

Ce problème ne concerne que les utilisateurs de MINT ou ceux qui ont activé MINT dans les installations Edge pour le cloud privé.

Composant concerné : edge-message-processor

Problème : si vous avez activé la monétisation et que vous installez la version 4.52.01 en tant que nouvelle installation ou que vous effectuez une mise à niveau à partir de versions antérieures du cloud privé, vous rencontrerez un problème avec les processeurs de messages. Le nombre de threads ouverts augmentera progressivement, ce qui entraînera une saturation des ressources. L'exception suivante s'affiche dans le fichier system.log du processeur de messages Edge :

Error injecting constructor, java.lang.OutOfMemoryError: unable to create new native thread
Faille HTTP/2 Apigee

Une faille par déni de service (DoS) a récemment été détectée dans plusieurs implémentations du protocole HTTP/2 (CVE-2023-44487), y compris dans Apigee Edge pour le cloud privé. La faille pourrait entraîner un déni de service de la fonctionnalité de gestion d'API Apigee. Pour en savoir plus, consultez le bulletin de sécurité Apigee GCP-2023-032.

Les composants du routeur et du serveur de gestion Edge pour le cloud privé sont exposés sur Internet et peuvent être vulnérables. Bien que HTTP/2 soit activé sur le port de gestion d'autres composants propres à Edge de Edge pour le cloud privé, aucun de ces composants n'est exposé à Internet. Sur les composants autres que Edge, tels que Cassandra, Zookeeper et d'autres, HTTP/2 n'est pas activé. Nous vous recommandons de suivre les étapes ci-dessous pour résoudre la faille Edge pour le cloud privé :

Suivez ces étapes si vous utilisez les versions 4.51.00.11 ou ultérieures d'Edge pour le cloud privé :

  1. Mettez à jour le serveur de gestion :

    1. Sur chaque nœud du serveur de gestion, ouvrez /opt/apigee/customer/application/management-server.properties.
    2. Ajoutez la ligne suivante au fichier de propriétés :
      conf_webserver_http2.enabled=false
    3. Redémarrez le composant du serveur de gestion :
      apigee-service edge-management-server restart
  2. Mettez à jour le processeur de messages :

    1. Sur chaque nœud du processeur de messages, ouvrez /opt/apigee/customer/application/message-processor.properties.
    2. Ajoutez la ligne suivante au fichier de propriétés :
      conf_webserver_http2.enabled=false
    3. Redémarrez le composant du processeur de messages :
      apigee-service edge-message-processor restart
  3. Mettez à jour le routeur :

    1. Sur chaque nœud du routeur, ouvrez /opt/apigee/customer/application/router.properties.
    2. Ajoutez la ligne suivante au fichier de propriétés :
      conf_webserver_http2.enabled=false
    3. Redémarrez le composant du processeur de messages :
      apigee-service edge-router restart
  4. Mettez à jour QPID :

    1. Sur chaque nœud QPID, ouvrez /opt/apigee/customer/application/qpid-server.properties.
    2. Ajoutez la ligne suivante au fichier de propriétés :
      conf_webserver_http2.enabled=false
    3. Redémarrez le composant du processeur de messages :
      apigee-service edge-qpid-server restart
  5. Mettez à jour Postgres :

    1. Sur chaque nœud Postgres, ouvrez /opt/apigee/customer/application/postgres-server.properties.
    2. Ajoutez la ligne suivante au fichier de propriétés :
      conf_webserver_http2.enabled=false
    3. Redémarrez le composant du processeur de messages :
      apigee-service edge-postgres-server restart

Suivez ces étapes si vous utilisez des versions d'Edge pour le cloud privé antérieures à la version 4.51.00.11 :

  1. Mettez à jour le serveur de gestion :

    1. Sur chaque nœud du serveur de gestion, ouvrez /opt/apigee/customer/application/management-server.properties.
    2. Ajoutez les deux lignes suivantes au fichier de propriétés :
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Redémarrez le composant du serveur de gestion :
      apigee-service edge-management-server restart
  2. Mettez à jour le processeur de messages :

    1. Sur chaque nœud du processeur de messages, ouvrez /opt/apigee/customer/application/message-processor.properties.
    2. Ajoutez les deux lignes suivantes au fichier de propriétés :
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Redémarrez le composant du processeur de messages :
      apigee-service edge-message-processor restart
  3. Mettez à jour le routeur :

    1. Sur chaque nœud du routeur, ouvrez /opt/apigee/customer/application/router.properties.
    2. Ajoutez les deux lignes suivantes au fichier de propriétés :
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Redémarrez le composant du processeur de messages :
      apigee-service edge-router restart
  4. Mettez à jour QPID :

    1. Sur chaque nœud QPID, ouvrez /opt/apigee/customer/application/qpid-server.properties.
    2. Ajoutez les deux lignes suivantes au fichier de propriétés :
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Redémarrez le composant du processeur de messages :
      apigee-service edge-qpid-server restart
  5. Mettez à jour Postgres :

    1. Sur chaque nœud Postgres, ouvrez /opt/apigee/customer/application/postgres-server.properties.
    2. Ajoutez les deux lignes suivantes au fichier de propriétés :
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Redémarrez le composant du processeur de messages :
      apigee-service edge-postgres-server restart
Mise à niveau de Postgresql lors du passage à la version 4.52

Apigee-postgresql rencontre des problèmes lors de la mise à niveau d'Edge pour le cloud privé version 4.50 ou 4.51 vers la version 4.52. Ces problèmes se produisent principalement lorsque le nombre de tables est supérieur à 500.

Vous pouvez vérifier le nombre total de tables dans Postgres en exécutant la requête SQL ci-dessous :

select count(*) from information_schema.tables

Solution : lorsque vous mettez à jour Apigee Edge 4.50.00 ou 4.51.00 vers la version 4.52.00, veillez à effectuer l'étape préliminaire avant de mettre à niveau Apigee-postgresql.

Règle LDAP

149245401 : les paramètres du pool de connexions LDAP pour JNDI configurés via la ressource LDAP ne sont pas reflétés, et les valeurs par défaut de JNDI entraînent des connexions à usage unique à chaque fois. Par conséquent, les connexions sont ouvertes et fermées à chaque fois pour un usage unique, ce qui crée un grand nombre de connexions par heure au serveur LDAP.

Solution :

Pour modifier les propriétés du pool de connexions LDAP, procédez comme suit pour définir une modification globale dans toutes les règles LDAP.

  1. Créez un fichier de propriétés de configuration s'il n'existe pas déjà :
    /opt/apigee/customer/application/message-processor.properties
  2. Ajoutez les éléments suivants au fichier (remplacez les valeurs des propriétés Java Naming and Directory Interface (JNDI) en fonction de vos exigences de configuration de ressources 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. Assurez-vous que le fichier /opt/apigee/customer/application/message-processor.properties appartient à apigee:apigee.
  4. Redémarrez chaque processeur de messages.

Pour vérifier que les propriétés JNDI de votre pool de connexions prennent effet, vous pouvez effectuer un tcpdump pour observer le comportement du pool de connexions LDAP au fil du temps.

Latence élevée du traitement des requêtes

139051927 : les latences élevées de traitement des proxys détectées dans le processeur de messages affectent tous les proxys d'API. Les symptômes incluent des délais de 200 à 300 ms dans les temps de traitement par rapport aux temps de réponse normaux de l'API et peuvent se produire de manière aléatoire, même avec un faible nombre de TPS. Cela peut se produire lorsque le nombre de serveurs cibles auxquels un processeur de messages se connecte est supérieur à 50.

Cause principale les processeurs de messages conservent un cache qui mappe l'URL du serveur cible à l'objet HTTPClient pour les connexions sortantes aux serveurs cibles. Par défaut, ce paramètre est défini sur 50, ce qui peut être trop faible pour la plupart des déploiements. Lorsqu'un déploiement comporte plusieurs combinaisons d'organisations/d'environnements dans une configuration, et qu'il comporte un grand nombre de serveurs cibles dépassant 50 au total, les URL des serveurs cibles sont constamment supprimées du cache, ce qui entraîne des latences.

Validation : pour déterminer si la suppression de l'URL du serveur cible est à l'origine du problème de latence, recherchez le mot clé "onEvict" ou "Eviction" dans les journaux système du processeur de messages. Leur présence dans les journaux indique que les URL des serveurs cibles sont supprimées du cache HTTPClient, car la taille du cache est trop petite.

Solution : pour les versions 19.01 et 19.06 d'Edge pour le cloud privé, vous pouvez modifier et configurer le cache HTTPClient : /opt/apigee/customer/application/message-processor.properties

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

Redémarrez ensuite le processeur de messages. Effectuez les mêmes modifications pour tous les processeurs de messages.

La valeur 500 est un exemple. La valeur optimale pour votre configuration doit être supérieure à le nombre de serveurs cibles auxquels le processeur de messages se connecte. La définition d'une valeur plus élevée pour cette propriété n'a aucun effet secondaire, et le seul impact sera une amélioration des temps de traitement des requêtes de proxy du processeur de messages.

Remarque : La version 50.00 d'Edge pour le cloud privé est définie par défaut sur 500.

Plusieurs entrées pour les mappages de clés-valeurs

157933959 : les insertions et mises à jour simultanées dans le même mappage de clés-valeurs (KVM) limité au niveau de l'organisation ou de l'environnement entraînent des données incohérentes et des mises à jour perdues.

Remarque : Cette limitation ne s'applique qu'à Edge pour le cloud privé. Edge pour le cloud public et Hybrid ne présentent pas cette limitation.

Pour contourner ce problème dans Edge pour le cloud privé, créez le KVM au niveau du champ d'application apiproxy scope.