Mise en œuvre des stratégies d'API

Gestion des API Azure

Fiodar Sazanavets

Senior Software Engineer at Microsoft

Introduction aux stratégies d'API

Stratégies de gestion d'API

  • Comme un portier : contrôler qui entre
  • Comme des « limites de vitesse » : réguler le trafic
  • Protéger les API en bloquant les fauteurs de trouble
  • Limiter le débit pour éviter la saturation du système
  • Tout ce qui entre/sort de l'API Gateway est régi par des stratégies
Gestion des API Azure

Aperçu des stratégies de gestion d'API

Stratégies APIM

  • Des règles puissantes rédigées en XML simple
  • Pensez-y comme à un « pipeline » requête-réponse
  • Insérez des règles à chaque étape pour façonner le trafic
  • Atout majeur : aucun changement au code du backend
Gestion des API Azure

Exemple : rétrocompatibilité

Rétrocompatibilité via APIM

Gestion des API Azure

Portées des stratégies

  • Des stratégies peuvent être globales, à l'échelle de l'organisation
    • Elles régissent toutes les API
  • Peuvent s'appliquer à des API individuelles
    • Pour gérer un produit précis
  • Peuvent s'appliquer à des points de terminaison individuels
    • Pour un contrôle très fin

Portées des stratégies

Gestion des API Azure

Stratégies « inbound »

  • À la réception d'une requête, APIM évalue d'abord les stratégies « inbound »
  • Exemple : rendre d'anciennes applis compatibles avec de nouvelles API en augmentant la charge utile
  • Les stratégies inbound bloquent aussi les tentatives malveillantes
  • Elles détectent les requêtes mal formées ou les données manquantes
  • Ce garde-fou précoce empêche les mauvaises données d'atteindre les services

Augmentation des données en entrée

Validation des requêtes

Gestion des API Azure

Sécurité et limitation de débit

Stratégie d'entrée pour la sécurité

Application de quotas de requêtes

  • Elles limitent les clients excessifs, assurant une utilisation équitable et la protection du backend
  • Les stratégies inbound gèrent aussi la sécurité
  • Politique courante : valider un JWT (JSON Web Token)
  • Pensez au JWT comme à une carte d'identité numérique envoyée par le client
  • La stratégie validate-jwt vérifie sa légitimité, son expiration et l'émetteur de confiance (p. ex., Entra ID)
  • Pour un contrôle renforcé : stratégies de limitation de débit et de quotas
Gestion des API Azure

Stratégies « outbound »

  • Après le traitement par le backend, les stratégies « outbound » ajustent la réponse avant le retour
  • Comme au resto : requête -> cuisine (backend) -> dressage (stratégies outbound)
  • Les stratégies outbound peuvent :
    • Retirer des éléments inutiles (p. ex., en-têtes sensibles)
    • Ajouter des directives (p. ex., mise en cache)
    • Changer le format (p. ex., convertir XML en JSON)

Augmentation des données de réponse

Transformation de la réponse

  • Les réponses respectent les attentes du client, peu importe la préparation du backend
Gestion des API Azure

Passons à la pratique !

Gestion des API Azure

Preparing Video For Download...