Bonnes pratiques et solutions de gestion des API

Laissez les développeurs aux commandes grâce aux solutions de passerelle et de gestion d’API rapides, sécurisées et évolutives de F5



Les API constituent un élément fondamental du développement d’applications cloud natives et conteneurisées. En permettant aux équipes opérationnelles de travailler de concert, elles peuvent accélérer la mise sur le marché des applications et vous aider à offrir de meilleures expériences utilisateur que vos concurrents. En contrepartie, leur utilisation a décentralisé la structure des applications. La conception, la publication et la gestion des API s’en trouvent complexifiées, ce qui engendre des difficultés de gestion à la fois complexes et risquées. Sans contrôles automatisés et hautement performants du trafic et des politiques, la multiplication et la complexité croissante des API ralentiront l’agilité des développeurs.

F5 propose une solution complète pour gérer les API en toute sécurité dans n’importe quel centre de données ou cloud, grâce à une architecture simple, rapide et évolutive. Cette solution permet d’accélérer la mise sur le marché en automatisant le déploiement et la gestion des API, tout en assurant une protection contre les menaces propres aux API. F5 réunit au sein d’une même solution une gestion des API cloud-native, des passerelles API hautes performances et des contrôles de sécurité, réduisant ainsi la prolifération des outils et la complexité architecturale.

“F5 fournit une gestion des API cloud-native, des passerelles d’API hautes performances et des contrôles de sécurité au sein d’une solution unique, réduisant ainsi la prolifération des outils et la complexité architecturale.”



Principaux avantages

Sécurité centrée sur les API

Une protection contre les vulnérabilités courantes et avancées propres aux API que les passerelles API ne peuvent pas assurer

Solutions intégrées de mise à disposition d’API

Amélioration de l’efficacité opérationnelle grâce à une sécurité et une passerelle intégrées

Architectures d’API de microservices cloud-native

Intégration transparente dans pratiquement tous les modèles ou architectures de déploiement : proxy en périphérie, Kubernetes, passerelles Ingress, serverless, et bien plus encore

Adapté au DevOps et au développement d’applications

Une gestion de la sécurité, de l’automatisation et de la configuration aussi agile que vos équipes DevOps, pour accélérer la mise sur le marché tout en réduisant les coûts

Comprendre les défis de la gestion des API d’entreprise

Le développement d’applications évolue rapidement, et l’innovation transforme continuellement la nature de nos interactions. En raison de la complexité des conteneurs distribués, cette priorité accordée à la rapidité suscite parfois une réticence à l’égard de la gestion des API et de l’application des contrôles de sécurité et d’infrastructure. Malheureusement, comme les API sont de plus en plus utilisées pour les échanges de données entre microservices, elles deviennent une vulnérabilité potentielle susceptible d’exposer des données sensibles. Tous les points de terminaison d’API doivent donc être soumis au minimum à des règles standardisées en matière de gestion des risques, de configuration et d’application des politiques. Toutefois, l’automatisation de la publication des API supprimant certains mécanismes traditionnels d’intervention humaine et de supervision, les tendances mêmes qui rendent les API plus précieuses les rendent également plus vulnérables.


La plupart des passerelles API ne disposent pas de contrôles adéquats pour une gestion à grande échelle

Les passerelles d’API sont généralement conçues pour gérer la publication d’API sur une plateforme ou dans des clusters de microservices. Leur facilité d’utilisation et leur automatisation sont les principaux facteurs qui favorisent leur adoption, car il est difficile de faire évoluer l’interconnectivité des API afin de répondre aux exigences de trafic des clients à mesure que votre portefeuille d’applications s’étoffe, tout en restant indépendant des plateformes. Cela explique pourquoi les erreurs de configuration des API et les failles de sécurité ont été à l’origine de certaines des violations de données d’API les plus médiatisées .

Le DevOps doit gérer un nombre croissant de pipelines d’automatisation, chacun nécessitant des outils différents pour répondre aux besoins des développeurs et des applications. Ces situations engendrent une fragmentation des flux de trafic API et des instances de gestion, encore accentuée par des solutions d’observabilité cloisonnées. Malheureusement, il est encore courant que les équipes de développement et DevOps soient évaluées sur la fréquence de leurs mises en production, mais pas sur la sécurité de celles-ci.

Il en résulte des défaillances à grande échelle dans la gestion de la croissance des API d’entreprise, qui engendrent des risques nouveaux et involontaires ainsi qu’une exposition liée à l’utilisation non autorisée des API — autant de menaces parmi les plus courantes selon le Top 10 des risques de sécurité des API de l’OWASP .

Les API rencontrent également des problèmes de performances lorsqu’elles doivent gérer un trafic à grande échelle. Un délai de transaction de 50 à 100 millisecondes peut être acceptable lors du lancement initial d’une application, mais lorsqu’il se multiplie sur des centaines ou des milliers de microservices qui évoluent pour répondre à la demande des clients, ces délais s’accumulent et ralentissent toute la chaîne applicative. Résultat ? Des performances médiocres et des attentes clients déçues.

L’automatisation de l’accès aux points de terminaison des API, de leur configuration et de leur sécurité dans l’ensemble du portefeuille d’applications de l’entreprise, du développement initial au déploiement en production, permettra aux équipes DevOps de gérer à grande échelle les performances et les vulnérabilités potentielles, afin qu’elles puissent se concentrer sur d’autres problématiques liées au pipeline d’automatisation.


Contrôles incohérents dans les environnements d’API de microservices

Les applications cloud-native sont de plus en plus distribuées et décentralisées par conception. Elles s’appuient sur des centaines, voire des milliers, de points de terminaison basés sur des API, et des millions de transactions constituent leur principale source de trafic. Une récente étude de F5 Labs  montre que le nombre d’incidents de sécurité liés aux API augmente chaque année et que, ces deux dernières années, les causes les plus fréquentes de ces incidents sont associées à un faible niveau de maturité en matière de sécurité, souvent dû à la prolifération des outils.

Lorsque différentes équipes de développement travaillent sur différentes parties d’applications distribuées sur plusieurs plateformes, la gestion des API se complexifie, ce qui se traduit par des applications peu sécurisées et peu performantes. Des problèmes peuvent survenir en raison d’échecs de déploiement, d’une dégradation des performances ou d’un accès malveillant à des flux sensibles. Il est alors difficile d’y remédier, et plus encore d’en déterminer précisément la cause. Réduire cette complexité à grande échelle permet de limiter les risques et de mettre en place un ensemble cohérent de politiques de configuration, de performance et de sécurité optimisées en fonction de vos objectifs métier. Fournir aux équipes DevOps un ensemble d’outils standard pour automatiser l’intégration des contrôles appropriés aux processus de développement et de gestion des API permet à vos applications d’évoluer au rythme de votre entreprise.

“Plus d’un tiers des personnes interrogées dans le cadre de l’enquête d’ESG sur les applications cloud natives ont indiqué que la sécurité constituait l’un des principaux défis auxquels elles étaient confrontées ou s’attendaient à être confrontées avec ces applications. À mesure que celles-ci évoluent, les incompatibilités entre API, les problèmes de performances et le manque d’observabilité deviennent rapidement d’autres défis majeurs.”


Solution

Les entreprises doivent assurer la maintenance et l’évolution de leurs API traditionnelles, tout en en développant de nouvelles à l’aide d’architectures de microservices cloud-native. Celles-ci peuvent être déployées sur des systèmes privés bare metal, depuis le cloud ou via des solutions de transit multicloud. Les API sont difficiles à catégoriser, car elles servent à proposer diverses expériences utilisateur, chacune pouvant nécessiter un ensemble différent de contrôles en matière de développement, de publication et de sécurité. La flexibilité des solutions F5 NGINX permet de répondre à de nombreux cas d’usage ou modèles architecturaux afin de satisfaire les exigences de toutes les équipes de développement.

Schéma des bonnes pratiques de gestion des API
Figure 1 : F5 est le seul fournisseur capable de proposer, au sein d’une solution unique, la gestion des API, des passerelles d’API hautes performances et des contrôles de sécurité avancés.


Cas d’usage courants de gestion et de publication d’API

Dans toutes les solutions présentées ci-dessous, F5 NGINX Management Suite  est utilisée pour les fonctions de gestion des API, telles que la publication des API, la configuration de l’authentification et des autorisations, ainsi que l’utilisation de la passerelle API proposée dans NGINX Plus pour constituer le chemin de données. Les contrôles de sécurité sont mis en œuvre en fonction des exigences de sécurité des données et de la plateforme de diffusion des API.

  1. API pour les entreprises fortement réglementées

    Les API métier impliquant l’échange d’informations sensibles ou réglementées peuvent nécessiter des contrôles de gestion, de reporting et de sécurité afin de garantir la conformité à des réglementations supplémentaires ou à des exigences sectorielles. Par exemple, les applications qui transmettent des informations de santé protégées ou des informations financières sensibles doivent respecter des normes propres à leur secteur. L’application des politiques, le contrôle d’accès basé sur les rôles et auditable, l’analyse et l’inspection des charges utiles à grande échelle deviennent des mécanismes essentiels pour gérer et protéger ce type d’API.

    L’association d’une technologie de pare-feu applicatif web (WAF) avancée de pointe pour les interfaces applicatives avec F5 NGINX Plus API Gateway et F5 NGINX App Protect WAF offre une protection supérieure du périmètre, des API et des microservices, garantissant une disponibilité et des performances optimales pour les systèmes critiques.

  2. API distribuées multicloud

    Les applications mobiles destinées à des utilisateurs du monde entier ont besoin de back-ends géodistribués afin de fournir des réponses d’API à faible latence. D’autres services applicatifs peuvent également devoir être distribués, en rapprochant les charges de travail à fort volume de transactions des utilisateurs ou des données afin d’améliorer les performances. Pour optimiser le temps de réponse, vous aurez besoin d’une plateforme distribuée capable d’orchestrer la mise à disposition de points de terminaison d’API depuis plusieurs emplacements afin de servir votre base d’utilisateurs.

    F5 NGINX Plus  offre des fonctionnalités de passerelle d’API, d’équilibrage de charge et de sécurité indépendantes de la plateforme. Déployé avec le module API Connectivity Manager de F5 NGINX Management Suite , il permet aux équipes DevOps et AppDev de publier des API à grande échelle de manière performante, automatisée et sécurisée.

    Pour fournir une connectivité multicloud avancée à vos environnements distribués, les solutions de mise en réseau multicloud F5 Distributed Cloud  dissocient les problématiques d’infrastructure réseau relevant des équipes NetOps du déploiement des applications. Les équipes DevOps n’ont plus à se soucier du chevauchement des adresses IP ni des configurations de routage complexes et peuvent se concentrer sur la mise à disposition immédiate d’une infrastructure prête pour le développement. Testez les cas d’usage des services F5 Distributed Cloud  et du déploiement de NGINX  pour relever vos défis multicloud.

  3. Charges de travail d’API dans Kubernetes

    F5 NGINX Ingress Controller est un équilibreur de charge, un cache, une passerelle d’API et un WAF tout-en-un pour les microservices dans Kubernetes. Associé à la solution toujours gratuite F5 NGINX Service Mesh, il permet aux équipes DevOps de maîtriser le développement et le déploiement des API. NGINX Ingress Controller pour NGINX Plus s’intègre entièrement à NGINX App Protect dans une configuration unique et facile à déployer, ce qui réduit le coût et la complexité des applications de niveau production. NGINX Service Mesh assure la visibilité des flux est-ouest et la sécurité des charges de travail grâce au protocole mTLS.

    NGINX Ingress Controller pour NGINX Plus s’intègre à NGINX Service Mesh afin d’offrir un plan de données unifié doté d’une sécurité, de fonctionnalités et d’une évolutivité de niveau production. Léger et axé sur la gestion du trafic applicatif de couche 7 au sein des clusters, NGINX Service Mesh est non intrusif, ce qui permet au reste de votre pile technologique de fonctionner sans complications, comme il se doit.


“L’association d’une technologie de pare-feu applicatif web (WAF) avancée, leader du secteur, pour les interfaces applicatives avec la passerelle API F5 NGINX Plus et F5 NGINX App Protect offre une protection supérieure du périmètre, des API et des microservices, garantissant une disponibilité et des performances essentielles aux activités critiques.”


Conclusion

Les solutions F5 assurent la mise à disposition, la gestion et la sécurisation des API ainsi que de l’infrastructure qui les héberge, quels que soient votre plateforme ou votre architecture d’automatisation. F5 offre une protection robuste contre les bots et les attaques courantes et avancées ciblant les API, ainsi qu’une intégration DevOps pour la publication des API et la visibilité sur leurs performances. Ensemble, ces solutions vous aident à atteindre votre objectif de portabilité des applications, quel que soit l’environnement de déploiement, en rapprochant les charges de travail de vos clients.

Donnez à vos équipes de développement et d’exploitation l’agilité nécessaire pour répondre dès aujourd’hui aux besoins de l’entreprise, en leur offrant la liberté d’utiliser l’environnement le mieux adapté à chaque tâche, qu’il soit hébergé dans le cloud ou sur site, ainsi que la polyvalence requise pour accompagner l’entreprise à l’avenir, grâce à une architecture portable qui évolue avec vous.


Fonctionnalités principales

Définition et publication d’API — définissez des API à l’aide d’une interface intuitive
  • Définir le chemin de base et les services backend
  • Acheminer les API vers les services backend appropriés
  • Gérer le versionnement des API
  • Importer des API conformes aux normes OpenAPI
  • Publier des API dans un ou plusieurs environnements, tels que la production ou la préproduction
  • Configurer les passerelles d’API
  • Configurer les politiques de sécurité
  • Déployer et exécuter dans des architectures de microservices

Surveillance et alertes en temps réel : obtenez des informations essentielles sur les performances des API
  • Graphiques des indicateurs clés tels que la latence et le temps de réponse
  • Métriques propres à la passerelle, telles que le nombre de requêtes par seconde, les connexions actives et l’utilisation de la bande passante
  • Alertes portant sur plus de 100 métriques, telles que l’utilisation du processeur, les erreurs 4xx/5xx et les échecs des contrôles d’intégrité, selon des seuils prédéfinis
  • Intégration facile avec l’outil de supervision de votre choix via une API REST

Tableaux de bord : surveillez et dépannez rapidement les passerelles API
  • Un tableau de bord récapitulatif qui agrège les métriques de toutes les passerelles d’API
  • Un score de santé de l’application qui mesure les requêtes réussies et les réponses fournies dans les délais
  • Des tableaux de bord personnalisables pour surveiller les métriques propres à votre environnement
Limitation du débit — atténuez les attaques DDoS et protégez vos applications en définissant des limites de débit
  • Spécifiez le nombre maximal de requêtes autorisées pour chaque client, consommateur ou ressource
  • Protéger les points de terminaison d’API et garantir les SLA pour les consommateurs d’API
  • Définir plusieurs politiques de limitation du débit

Authentification et autorisation
  • Valider les jetons Web JSON (JWT)
  • Créer et gérer des clés d’API pour les consommateurs
  • Importer des clés d’API depuis des systèmes externes
  • Partager avec les consommateurs d’API
  • Appliquer des politiques à des groupes de clients d’API