Vous consultez la documentation Apigee Edge.
Accédez à la documentation Apigee X.
Aux dates suivantes, nous avons commencé à déployer des mises à jour de composants pour Apigee Edge pour le cloud public :
- Processeur de messages : vendredi 1er mai 2020
- Gestion des API : lundi 20 avril 2020
- Gestion de la monétisation : lundi 20 avril 2020
- Version corrective d'API Management : lundi 22 juin 2020
- Version corrective de Monetization Management : lundi 6 juillet 2020
- Mise à jour de sécurité du serveur de gestion : lundi 24 août 2020
- Version corrective du processeur de messages avec correction de bugs : jeudi 24 septembre 2020
- Version corrective du processeur de messages avec correction de bugs : lundi 26 octobre 2020
- Version corrective du processeur de messages avec correction de bugs : lundi 1er février 2021
Nouvelles fonctionnalités et mises à jour
Vous trouverez ci-dessous les nouvelles fonctionnalités et mises à jour offertes par cette version.
Règles JWT
-
Chiffrement JWT
Les règles JWT vous permettent de générer, de vérifier et de décoder des jetons chiffrés. Voici les nouveaux éléments des règles :
<Type>: permet de définir si les jetons sont signés ou chiffrés.<EncryptionAlgorithms>: vous permet de définir les algorithmes de chiffrement<Key>et<Content>.
(67165581)
Compatibilité avec les algorithmes PSS dans les jetons signés
Les règles de génération et de validation des jetons JWT et JWS sont désormais compatibles avec les algorithmes PS256, PS384 et PS512, comme décrit dans la RFC 7518 de l'IETF. (119856499)
Heure de début relative GenerateJWT pour le jeton
Lorsque vous générez un jeton JWT avec la règle GenerateJWT, l'élément
<NotBefore>vous permet de spécifier un délai relatif entre la génération d'un jeton et sa validité. Par exemple, une valeur<NotBefore>de 2h signifie qu'un jeton n'est valide que deux heures après sa génération. Vous pouvez définir la durée<NotBefore>en millisecondes (ms), secondes (s), minutes (m), heures (h), jours (d) ou semaines (w). (126261970)-
Faire référence à la clé publique/au certificat dans VerifyJWT
Dans la règle VerifyJWT, un élément
<PublicKey>/<Certificate>vous permet de faire référence au certificat au format PEM avec lequel vérifier les signatures JWT entrantes. Exemple :<PublicKey> <Certificate ref='public.certificate_pem'/> </PublicKey>
(132918033)
Fonctions des modèles de messages
Voici les nouvelles fonctions de modèle de message disponibles dans cette version :
- firstnonull : renvoie la valeur du premier argument non nul (le plus à gauche). (139698514)
- xpath : vous permet d'appliquer une expression XML Path (XPath) pour analyser les variables XML. (123246424)
Règle AssignMessage : AssignVariable vous permet de faire référence à un modèle de message
Dans la règle AssignMessage, l'élément <AssignVariable> / <Template> autorise un attribut ref, ce qui vous permet d'injecter un modèle prédéfini au moment de l'exécution, qui peut changer sans avoir à modifier la règle. (118396082)
Plusieurs alias de certificat
Lorsque vous
configurez TLS et que vous utilisez plusieurs certificats dans un keystore, chacun avec un alias différent, Edge vous permet de référencer des alias de certificat spécifiques dans votre configuration <SSLInfo><KeyAlias>. Pour activer ce nouveau comportement, définissez une nouvelle propriété HTTPClient.choose.alias.by.keyalias sur "true" dans le fichier http.properties des processeurs de messages. Les utilisateurs d'Edge pour le cloud public doivent contacter l'
assistance pour ajouter cette propriété. (142141620)
Règle JSONtoXML : omettre la déclaration XML, mettre en retrait la sortie
Deux nouvelles options booléennes dans la règle JSONtoXML vous permettent de mieux contrôler la sortie XML.
<Options> <OmitXmlDeclaration>: lorsque la valeur est définie sur "true" (la valeur par défaut est "false"), l'élément<OmitXmlDeclaration>omet la déclaration XML<?xml version="1.0" encoding="UTF-8"?>par défaut générée par la règle.<Options> <Indent>: lorsque la valeur est définie sur "true" (la valeur par défaut est "false"), l'élément<Indent>indente la sortie XML. Par exemple, au lieu de ce résultat :<Array><n>1</n><n>2</n><n>3</n></Array>
L'élément "Indent" (Retrait) produit le résultat suivant :
<Array> <n>1</n> <n>2</n> <n>3</n> </Array>
(65142394)
Réponses pour l'analyse des hôtes virtuels
Si une requête était envoyée à l'adresse IP d'un point de terminaison Apigee (sans hôte virtuel spécifié), Edge renvoyait une réponse HTTP 200 et un document HTML vide à partir de l'hôte virtuel Apigee par défaut associé à cette adresse IP. Pour éviter de donner l'impression erronée qu'une telle réponse pourrait représenter une faille potentielle qui pourrait être exploitée, la connexion est abandonnée et aucune réponse n'est renvoyée. (140005396)
Propriétés du serveur cible dans Trace pour faciliter le dépannage
Les nouvelles propriétés de trace suivantes permettent de résoudre les problèmes de connexion à la cible en indiquant si le HTTPClient du serveur cible a été mis en cache : isHttpClientCached et isFromClientPool. (140574604)
Règle MessageLogging : message Syslog
Dans la règle MessageLogging, un nouvel élément
<Syslog> / <PayloadOnly> (booléen) vous permet de déterminer si quelque chose est automatiquement ajouté
au <Message> que vous définissez. Si vous définissez <PayloadOnly> sur "true", rien n'est ajouté au début de votre définition de message (quel que soit le paramètre <FormatMessage>). Si cette valeur est définie sur "false" (valeur par défaut), le paramètre <FormatMessage> détermine ce qui est ajouté au début du message de journal. (68722102)
Expiration des règles de cache
Un nouvel élément d'expiration <TimeoutInSeconds> sur les règles ResponseCache et PopulateCache se comporte comme l'élément <TimeoutInSecs> existant était initialement censé fonctionner. Veuillez utiliser le nouvel élément.
L'élément <TimeoutInSecs> obsolète existe toujours pour assurer la rétrocompatibilité. Si les éléments <TimeoutInSecs> et <TimeoutInSeconds> sont configurés, Edge utilise <TimeoutInSeconds>. (119172893)
Variable de flux virtualhost.aliases.values
Une nouvelle variable de flux de messages virtualhost.aliases.values en lecture seule renvoie un tableau au format JSON de tous les alias attribués à l'hôte virtuel appelé dans la requête entrante. (128453178)
Nouveau paramètre pour assurer la suppression de la révision du proxy
Un nouveau paramètre de requête force a été ajouté à l'API de suppression de révision de proxy d'API.
Dans les cas où la révision est listée dans l'API List API Proxies, mais ne peut pas être interrogée, ce paramètre garantit que la révision du proxy est supprimée. (111691721)
Exemple :
DELETE /v1/organizations/myorg/apis/myproxy/revisions/2?force=true
Nouvelle variable de flux pour les valeurs d'alias d'hôte virtuel
Une nouvelle variable de flux de messages virtualhost.aliases.values en lecture seule renvoie un tableau au format JSON de tous les alias attribués à l'hôte virtuel appelé dans la requête entrante. (128453178)
Bugs résolus
Les bugs suivants sont résolus dans cette version. Cette liste s'adresse principalement aux utilisateurs qui veulent vérifier si un correctif a été émis en réponse à leurs demandes d'assistance. Elle n'est pas conçue pour fournir des informations détaillées à tous les utilisateurs.
| ID du problème | Nom du composant | Description |
|---|---|---|
| 143313772 | Processeur de messages |
Correction d'un problème dans la règle SpikeArrest qui se produisait lorsque (Dans la version du correctif du 01/02/2021) |
| 154428338 | Exécution des API |
Le processeur de messages ne parvient pas à charger les environnements lorsque les keystores sont configurés avec des noms ou des alias similaires. Nous avons corrigé un conflit de recherche par expression régulière lors du chargement de keystores dont la convention de nommage est similaire. Cela empêchait le processeur de messages de charger les environnements associés au keystore ou de démarrer lorsque plusieurs keystores en conflit étaient renvoyés lors de la recherche. |
| 149507805 | Gestion des API |
Activer le déploiement/la configuration via HTTP pour tous les serveurs MGMT de production Les mises à jour de la configuration s'effectuent via HTTP au lieu de RPC, ce qui améliore la fiabilité et la journalisation des erreurs. |
| 137217974 | Gestion des API |
Lors de la configuration des MPs sur HTTP, propagez correctement l'erreur lorsqu'un serveur cible est toujours utilisé. Suite aux améliorations de fiabilité introduites dans le problème 149507805, les erreurs de réponse liées à la suppression du serveur cible étaient signalées à tort comme ayant l'état 200 (succès) lorsque la suppression échouait. Grâce à ce correctif, les erreurs de réponse sont désormais correctement signalées avec l'état 400 en cas d'échec de la suppression. Notez que la suppression d'un serveur cible peut échouer si celui-ci est référencé par un proxy actuellement déployé. Avant de supprimer un serveur cible, vérifiez qu'il n'est référencé par aucun proxy d'API actuellement déployé. |
| 69765558 | Gestion des API |
L'API Resource Permissions renvoie l'erreur 403 |
| 149545506 | Gestion des API |
Correction d'un problème de sécurité dans l'API permettant d'ajouter un utilisateur à un rôle. |
| 131246911 | Gestion des API |
Pour les e-mails destinés aux développeurs dans un portail, activez la compatibilité avec les nouveaux domaines tels que *.games et *.asia.
Correction d'un problème qui empêchait la création de développeurs sur Edge pour certains noms de domaine tels que |
| 142217645 | Gestion des API |
PUT v1/o/{org_name}/apiproducts/{product_name} ne supprime pas les quotas |
| 162299668 | Serveur de gestion |
Correction d'une faille de sécurité potentielle. |
| 135856488 | Serveur de gestion |
Lenteur de l'UI |
| 139407965 | Serveur de gestion |
Nous avons corrigé un problème qui permettait de créer un KVM sans nom. |
| 112488235 | Serveur de gestion |
Une validation a été ajoutée pour empêcher la création d'hôtes virtuels dont le nom contient des espaces. Les espaces ne sont pas autorisés dans les noms d'hôtes virtuels. |
| 132433193 | Gestion de la monétisation |
Correction d'un problème lié à la mise à jour de l'application. |
| 152514520 | Gestion de la monétisation |
Correction d'un problème lié aux appels d'API de gestion pour supprimer des entités. |
| 128450374 | Exécution des API |
Les règles JWT/JWS doivent respecter IgnoreUnresolvedVariables et générer l'erreur appropriée si la variable n'est pas définie. |
| 135354517 | Exécution des API |
L'organisation échoue dans Release_190301 en raison de l'application stricte du type de données "String" dans BasicAuth |
| 131763486 | Exécution des API |
Le chemin de base d'un flux partagé doit être ignoré dans le processeur de messages |
| 135972575 | Exécution des API |
Private Cloud 4.19.01 présente un comportement différent lors du déploiement avec override=true&delay=300 Ce correctif sera inclus dans une prochaine version d'Edge pour le cloud privé. |
| 141601836 | Exécution des API |
Corriger le nom d'hôte dans le message de journal |
| 116834109 | Exécution des API |
Valeurs incorrectes pour les variables failed, fault.cause et fault.name dans Trace |
| 130653816 | Exécution des API |
Erreurs 404 intermittentes pour le trafic d'exécution |
| 132777537 | Exécution des API |
Échec de la règle ExtractVariables pour un JSONPath valide |
| 133713555 | Exécution des API |
Routeur Edge modifiant l'en-tête de date |
| 133253435 | Exécution des API |
Utilisation élevée du processeur par le thread Apigee-Main |
| 111553402 | Exécution des API |
Un produit d'API avec des caractères non valides dans le chemin d'accès n'est détecté qu'au moment de l'exécution. |
| 126240341 | Exécution des API |
Amélioration du message générique "Échec de la génération" en cas d'échec de la règle GenerateJWT |
| 119854424 | Exécution des API |
Un LoadBalancer avec un seul serveur cible ne doit pas devenir inactif en cas d'échec de la connexion |
| 129275412 | Exécution des API |
Ajouter des en-têtes HTTP à l'hôte virtuel de secours pour les analyses d'adresses IP génériques |
| 129351507 | Exécution des API |
Échec du décodage de la règle BasicAuthentication lorsque le mot de passe contient un deux-points |
| 65852874 | Exécution des API |
Assurez-vous que HTTPClient n'essaie pas de réutiliser une connexion qui comportait un en-tête de réponse Connection:close. |
| 138951646 | Exécution des API |
La limite de temps ne fonctionne pas en JavaScript pour |
| 139051927 | Exécution des API |
Latence élevée de traitement des requêtes |
| 132443137 | Exécution des API |
Modifier le comportement du processeur de messages pour gérer les en-têtes x-apigee internes inconnus |
| 138310777 | Exécution des API |
L'appel de déploiement de flux partagé renvoie aléatoirement 504 |
| 67170148 | Exécution des API |
Différences entre "Temps écoulé" et "timeTaken" dans les ServiceCallouts |
| 124049692 | Exécution des API |
NullPointerException dans la règle VerifyApiKey |
| 135031506 | Exécution des API |
Ajouter un message de journal pour le format de clé JWT inattendu |
| 137312366 | Exécution des API |
Validation du contenu par l'en-tête Content-Type |
| 109871907 | Exécution des API |
Retards d'exécution de ServiceCallout sans élément Response |
| 143722867 | Exécution des API |
Le JWT doit appliquer une limite configurable au nombre d'itérations pour PBKDF2. |
| 144286363 | Trace hybride |
Le masque de débogage dans env.json ne masque pas les données de réponse dans Apigee hybrid |
| 147769812 | Exécution des API |
Déclarer les propriétés de hachage OAuth comme mutables dans les feature flags |
| 149037704 | Exécution des API |
Correction d'un problème où la valeur à attribuer à la variable de flux |
| 148972262 | Exécution des API |
DecodeJWS émet la charge utile dans une variable de contexte sous une forme inutile |
| 116580622 | Exécution des API |
Réponse incohérente |
| 149739904 | Exécution des API |
Le masquage des données pour les en-têtes HTTP ne doit pas tenir compte de la casse |
| 149431545 | Exécution des API |
GenerateJWT et VerifyJWT avec SecretKey n'acceptent aucun encodage, à l'exception d'UTF-8. |
| 155448596 | Gestion des API : correctif |
Autorisations manquantes pour le rôle apimonitoringadmin par défaut Des autorisations manquantes ont été ajoutées au rôle apimonitoringadmin. |
| 158592076 | Gestion des API : correctif |
Autorisations manquantes pour le rôle d'administrateur du développement par défaut Des autorisations manquantes ont été ajoutées au rôle d'administrateur du développement. |
| 152856311 | Gestion des API : correctif |
Validations permettant de refuser les certificats PKCS7 et DER dans le keystore et le truststore lors de la création et de la mise à jour de l'hôte virtuel Lors de la création ou de la mise à jour d'un hôte virtuel, des validations sont appliquées pour vérifier si les certificats ajoutés dans l'alias du keystore et le truststore sont au format PEM et non dans des formats incompatibles tels que PKCS7, DER, etc. |
| 155478545 | Gestion de la monétisation : correctif |
Un problème lié aux mises à jour de l'état des notifications par e-mail a été résolu. |
| 154121499 | Gestion de la monétisation : correctif |
Correction d'un problème où l'API |
| 152356393 | Gestion de la monétisation : correctif |
La validation de la longueur du nom de l'entreprise a été assouplie pour la création d'entreprises de monétisation. |
| 138542921 | Gestion de la monétisation : correctif |
Correction d'un problème qui entraînait l'échec de la création d'un forfait avec plusieurs attributs personnalisés dans le bundle de produits. |
| 150948843 | Gestion de la monétisation : correctif |
Correction d'un problème où l'API |
| 155443118 | Monetization Management-Patch |
Le champ |
| 150948843 | Gestion de la monétisation : correctif |
Correction d'un problème où l'API |