19.03.01 - Notes de version d'Apigee Edge pour le cloud public

<ph type="x-smartling-placeholder"></ph> Vous consultez la documentation Apigee Edge.
Accédez à la page Documentation sur Apigee X.
En savoir plus

<ph type="x-smartling-placeholder">

Le mardi 3 décembre 2019, nous avons commencé à publier une mise à jour de cette version d'Apigee Edge pour Cloud public. (La première sortie était le jeudi 18 avril 2019.)

Nouvelles fonctionnalités et mises à jour

Vous trouverez ci-dessous les nouvelles fonctionnalités et mises à jour offertes par cette version.

ID du problème Nom du composant Description
Apigee a commencé à publier les mises à jour suivantes le 1er octobre 2019
110995050 Exécution des API

Équilibrage de charge : plus de contrôle sur la suppression des serveurs défaillants

Lorsque vous configurez un d'un équilibreur de charge pour un proxy d'API, vous pouvez déterminer le nombre se produisent avant qu'un serveur ne soit retiré de la rotation de l'équilibrage de charge. Un échec de réponse signifie qu'Apigee ne reçoit aucune réponse d'un serveur cible. Dans ce cas, l'échec le compteur augmente d'une unité. Quand Apigee reçoit une réponse d'une cible, même si le est une erreur HTTP (500, par exemple) qui est comptabilisée comme une réponse du serveur cible, et le compteur d'échecs est réinitialisé. Pour garantir que les mauvaises réponses HTTP (telles que 500) incrémentez le compteur d'échecs pour retirer un serveur non opérationnel de la rotation de l'équilibrage de charge dès que possible, vous pouvez ajouter un élément <ServerUnhealthyResponse> avec des éléments enfants <ResponseCode> à la configuration de votre équilibreur de charge. Edge comptera également les réponses avec ces codes comme des échecs.

<HTTPTargetConnection>
  <LoadBalancer>
    <Algorithm>RoundRobin</Algorithm>
    <Server name="target1" />
    <Server name="target2" />
    <ServerUnhealthyResponse>
        <ResponseCode>500</ResponseCode>
        <ResponseCode>502</ResponseCode>
        <ResponseCode>503</ResponseCode>
    </ServerUnhealthyResponse>
    <MaxFailures>5</MaxFailures>
  </LoadBalancer>
</HTTPTargetConnection>
  
  
130416715 Sécurité

Améliorations apportées aux règles AccessControl

La règle AccessControl détermine quelles adresses IP peuvent appeler un proxy d'API. Un nouvel élément de cette règle permet aux développeurs d'API de mieux contrôler l'identification des adresses IP à évaluer.

<IgnoreTrueClientIPHeader>: facultatif (la valeur par défaut est "false"). Lorsque vous définissez cette option sur "True", la règle ignore l'en-tête True-Client-IP et évalue les adresses IP dans l'en-tête X-Forwarded-For, à la suite de la <ph type="x-smartling-placeholder"></ph> le comportement d'évaluation X-Forwarded-For que vous avez configuré.

<AccessControl async="false" continueOnError="false"
    enabled="true" name="Access-Control-1">
    <DisplayName>Access Control-1</DisplayName>
    <IgnoreTrueClientIPHeader>true</IgnoreTrueClientIPHeader>
    ...
</AccessControl>
Apigee a publié les mises à jour suivantes le 18 avril 2019.
117558815,
119856499,
110548137,
79526748,
72989449,
70712859,
69049041
Exécution des API JWS et JWT
Nous avons ajouté de nouvelles règles pour la compatibilité avec JWS et amélioré les règles JWT existantes.

Pour en savoir plus, consultez ce post destiné à la communauté.

122610025 Exécution des API Autoriser RaiseFault à définir également le motif de l'erreur et les variables arbitraires comme dans "AssignMessage"

Deux nouveaux éléments sont disponibles dans la stratégie RaiseFault pour rendre FaultRules une gestion plus propre et plus puissante.

  • ShortFaultReason est une valeur booléenne qui, lorsqu'elle est définie sur "true", place le nom de la règle dans la variable fault.reason.
  • AssignVariable, disponible dans FaultResponse, vous permet d'attribuer la réponse d'erreur à une variable qui sera utilisée par d'autres stratégies dans le flux de proxy d'API.
121149811 Cibles hébergées Limites appliquées aux cibles hébergées

Les limites s'appliquent désormais aux cibles hébergées. Pour en savoir plus sur les limites, consultez la section Limites.

117659213 Exécution des API Paramétrer les plages d'adresses IP dans la règle AccessControl

Vous pouvez désormais utiliser des variables de modèle de message pour définir des adresses IP et des masques CIDR Règle AccessControl. Par exemple, si vous souhaitez stocker un adresse IP et masque dans un mappage clé-valeur (KVM), vous pouvez récupérer ces valeurs à partir d'une variable que vous définissez dans le flux de proxy d'API. Cela vous permet de modifier plus facilement les valeurs IP au moment de l'exécution, sans avoir à modifier la configuration de vos règles.

Par exemple, au lieu du code suivant :

<MatchRule action="DENY">
    <SourceAddress mask="24">198.51.100.1</SourceAddress>
</MatchRule>
     

Vous pouvez configurer la règle de cette manière, en supposant que les valeurs sont stockées dans une KVM, et que vous utilisez la règle KeyValueMapOperations pour récupérer les valeurs et les attribuer les variables présentées ici:

<MatchRule action="DENY">
    <SourceAddress mask="{kvm.mask.ref}">{kvm.ip.ref}</SourceAddress>
</MatchRule>
     
113599885 Surveillance des API Rôles de surveillance des API

API Monitoring fournit deux rôles: Administrateur de surveillance des API et Utilisateur de surveillance des API, décrits dans Accès à la surveillance des API. Ils sont disponibles depuis décembre 2018.

132256772 Exécution des API En-tête X-Apigee.Message-Timeout ajouté à la requête

Edge ajoute maintenant l'en-tête X-Apigee.Message-Timeout à chaque requête. Cet en-tête est destiné à un usage interne par Edge. Ne vous fiez pas aux valeurs des en-têtes X-Apigee.* dans vos mandataires d'API car ces en-têtes ne sont pas destinés à être utilisés par les clients et peuvent être supprimés ou modifiés par Apigee à tout moment.

78575018 Cloud privé / OPDK Ignorer le serveur de gestion pour ignorer l'enregistrement du datastore de passerelle lorsqu'il existe plusieurs pods de passerelle

Bugs corrigés

Les bugs suivants sont résolus dans cette version. Cette liste est principalement destinée aux utilisateurs qui vérifient si leurs demandes d'assistance ont été corrigées. Elle n'est pas conçue pour fournir des informations détaillées à tous les utilisateurs.

ID du problème Nom du composant Description
Apigee a commencé à publier les correctifs suivants le 3 décembre 2019.
Correctifs de sécurité
Apigee a commencé à publier les correctifs suivants le 29 octobre 2019.
139381794 Serveur de gestion

Gérer les erreurs de suppression du keystore pour que l'appel d'API n'échoue pas

Apigee a commencé à publier les correctifs suivants le 1er octobre 2019
140761319 Exécution des API

x-apigee.edge.execution.sense.action est toujours défini sur null

139091614 Exécution des API

Dans la stratégie ResponseCache, NIOTheread s'exécute sans être rejeté par pool de threads

131331305 Services principaux

L'utilisation de plusieurs exportateurs de journaux sur les routeurs Apigee entraîne une utilisation élevée du processeur

136690640 Exécution des API

Erreurs 404 intermittentes dans des organisations spécifiques

140948100 Exécution des API

Le flux partagé déployé ne s'exécute pas sur certains processeurs de messages

Apigee a publié les correctifs suivants le 13 septembre 2019.
132654321 Serveur de gestion Les journaux d'audit n'affichent pas de données
131246911 Serveur de gestion Pour les adresses e-mail des développeurs sur un portail, activez la prise en charge des domaines plus récents tels que *.games ou *.asia
Apigee a publié les correctifs suivants le 18 avril 2019.
123844598 Serveur de gestion Les clés d'application supprimées ne peuvent plus être importées au bout de plus de 24 heures
123588156 Exécution des API La suppression de l'en-tête Content-Length de la réponse échoue avec un code 304
122732400 Exécution des API La définition d'api.timeout remplace io.timeout.millis
122545281 Exécution des API Le masque de données DebugSession pour JSON doit tenir compte des cas dans lesquels jsonPayload est un tableau
122355807 Serveur de gestion Comportement incorrect des autorisations pour les utilisateurs disposant de plusieurs rôles
121393556 Exécution des API x_apigee_fault_code est défini sur "org/codehaus/jackson/map/ObjectMapper"
120998548 Interface utilisateur périphérique Typo in error message: Cert is invalid or cannot be trust (Typo dans le message d'erreur : "Le certificat n'est pas valide ou ne peut pas être approuvé")
120990929 Exécution des API La réponse HTTP-413 de Nginx/Apigee-Router révèle le type de serveur.
120799489 Exécution des API Lorsque vous utilisez httpClient avec un rappel JavaScript asynchrone httpComplete(), la sortie de debugsession (trace) est ignorée
120794339 Exécution des API Dérivé de membres de l'organisation
120277011 Serveur de gestion Validation des entrées requise: impossible de déployer le proxy si le nom d'hôte du serveur cible comporte **.
119976417 Surveillance des API API Monitoring indique un temps de réponse du proxy élevé, tandis que les analyses indiquent un temps de réponse cible élevé
119947481 Exécution des API Dans un scénario d'exception, la charge utile à masquer est consignée en texte brut
119877164 Cloud privé / OPDK Les routeurs génèrent des erreurs, le processeur de messages se déconnecte alors que TLS est activé

Ce correctif sera inclus dans la prochaine version d'Edge pour Private Cloud.

119816218 Exécution des API Le cache de réponses ignore l'en-tête "Expiration" s'il est résolu en 0 ou en nombre négatif.
119770242 Exécution des API Échec de la communication du routeur vers MP entraînant un temps d'arrêt complet: une erreur dans PostClientFlow provoque une boucle infinie
119443145 Serveur de gestion Le proxy d'API renvoie 404 lorsque ProxyEndpoint est renommé et redéployé
119260281 Exécution des API \"Impossible d'analyser en tant que chaîne3000.0\" erreur de journal
118743407 Serveur de gestion Durée de déploiement du proxy Apigee
118447966 Exécution des API Erreur dans les appels JavaScript sous la version MP 180608_07
117549719 Exécution des API Incohérence entre l'URI de la requête et le chemin de base du proxy
117219520 Exécution des API MessageLogging: l'enregistreur Syslog utilise un format de date incorrect par défaut et n'affiche pas correctement les millisecondes
117116435 Exécution des API Erreurs intermittentes dans le fichier JavaScript
117091520 Exécution des API JavaAccroches échoue après la version 18.06.08 du processeur de messages
116165318 Exécution des API Les déploiements simultanés d'un même bundle provoquent une RepositoryException
116055025 Service Configstore Les processeurs de messages manquent d'applications et d'hôtes virtuels après le démarrage
115614498 Exécution des API Besoin d'aide pour l'ILB en OPDK

Ce correctif sera inclus dans la prochaine version d'Edge pour Private Cloud.

113972537 Exécution des API Plusieurs erreurs P1 – NullPointerException générée à partir du code Node.js dans les proxys Trireme – Erreur interne du serveur 500
113904969 Assistance Apigee Problème lié à la suppression des proxys d'API dans les organisations de démonstration
113554802 Exécution des API Valider l'échec d'une assertion SAML avec NullPointerException
113315737 Serveur de gestion Échec du déploiement du proxy en raison d'enregistrements de déploiement manquants dans Zookeeper
112767195 Exécution des API Erreurs DataStore intermittentes lors de l'accès à la règle KVM
112162179 Exécution des API La mise en cache d'un objet JavaScript sans le stringer peut entraîner des interblocages
111860576 Exécution des API Erreur manquante dans les règles relatives aux quotas
111671525 Cibles hébergées Les codes de réponse qui échouent à partir de cibles hébergées déclenchent un flux d'erreurs dans le proxy
111523933 Extensions(connecteurs) Problème de mise en cache de la règle ExtensionAccroche
111420263 Exécution des API Exception ConcurrentModification dans MessageLogging
110843526 Serveur de gestion L'API Management pour la création/mise à jour du hook de flux doit valider le flux partagé
110805739 Exécution des API La valeur TTL n'est pas définie sur -1 dans le flux CPS lorsque "Reuserefreshtoken" est défini sur "true" et que l'expiration du jeton d'actualisation n'est pas explicitement définie.
110429629 Exécution des API La règle BasicAuthentication émet la variable request.headers.Authorization dans DebugSession
110425503 Exécution des API L'actualisation de Nginx entraîne des problèmes de disponibilité de MP
110311540 Exécution des API NPE quand le MP s'arrête
110161455 Exécution des API AccessEntity devrait utiliser la méthode d'extraction par nom d'application au lieu d'extraire toutes les applications des organisations CPS.
90695522 Exécution des API context.proxyRequest.asForm génère java.lang.ArrayIndexOutOfBoundsException: 1
79734096 Serveur de gestion Les journaux d'audit pour les proxys ne filtrent plus les proxys
78105568 Serveur de gestion Les déploiements de flux partagés ne s'affichent pas dans les appels d'API de gestion /org/{org}/sharedflows/{sharedflow}/deployments management après la mise à jour d'un flux partagé déployé
77528868 Trireme Régression Trireme: fermeture du script server.js avec le code d'état -1: propriété 0 introuvable
73766568 Exécution des API La mise à niveau de 170213_02 vers 171117_01 a entraîné une énorme augmentation de la latence du proxy avec la cible Trireme/Node.
72710481 Exécution des API CacheServiceImpl/CacheMemoryLimiter NullPointerException
68861063 Exécution des API Gérer les exceptions NPE lors de l'arrêt des routeurs
68833699 Exécution des API Les informations sur le proxy d'API ne sont parfois pas supprimées de l'arbre de classification des API
67377575 Cibles hébergées Incohérence entre l'enregistrement d'analyse et ce qui est envoyé au client dans un proxy Node.js
112481174 Cibles hébergées Ne pas faire échouer l'annulation du déploiement du proxy en raison d'une erreur Turbo
117171470 Cibles hébergées Corriger le message d'erreur app.yaml non valide
67169139 Exécution des API Le format d'horodatage syslog de la règle MessageLogging n'est pas correct
67165418 Exécution des API Erreur de licence indiquant que davantage de processeurs de messages sont utilisés, même si vous en utilisez moins que le

Ce correctif sera inclus dans la prochaine version d'Edge pour Private Cloud.

67165195 Exécution des API ValidateSAMLAssertion ne vérifie pas la signature d'une assertion intégrée à une réponse signée
66214414 Exécution des API La variable currentstep.flowstate renvoie toujours \"SHARED_FLOW\" lorsqu'elles sont référencées à partir d'un flux partagé
65731656 Exécution des API L'API Threat Protection échoue par intermittence pour une même requête
133197060 Exécution des API Obtenir 57 délai avant expiration de la passerelle du MP vers la cible
110535186 Exécution des API ServiceAccroche sans élément Response et HTTPTargetConnection pointant vers proxy: SOMETIMES aucun appel
132443137 Exécution des API Modifier le comportement du processeur de messages pour ignorer les en-têtes commençant par X-Apigee-* Par conséquent, vous devez refactoriser tout code qui utilise X-Apigee-* et remplacez-les par des en-têtes compatibles.
125709964 Exécution des API Invalider le cache avec purgeChildEntry ne fonctionne pas comme prévu