Implementare le policy API

Azure API Management

Fiodar Sazanavets

Senior Software Engineer at Microsoft

Introduzione alle policy API

Policy di API Management

  • Come un buttafuori: controlla chi entra
  • Come limiti di velocità: controlla il traffico
  • Protegge le API bloccando i malintenzionati
  • Limita le richieste per non sovraccaricare il sistema
  • Tutto l’ingresso/uscita dal gateway API è regolato da policy
Azure API Management

Panoramica delle policy di API Management

Policy APIM

  • Le policy sono regole potenti scritte in semplice XML
  • Pensale come una pipeline richiesta-risposta
  • Puoi inserire regole in vari punti per modellare il traffico
  • Il bello: niente modifiche al codice del backend
Azure API Management

Esempio: compatibilità all’indietro

Compatibilità all’indietro con APIM

Azure API Management

Ambiti delle policy

  • Le policy possono essere globali, a livello organizzativo
    • Queste regole controllano tutte le API
  • Possono essere applicate a singole API
    • Permettono di gestire un prodotto specifico
  • Possono essere applicate a singoli endpoint
    • Per un controllo granulare

Ambiti delle policy

Azure API Management

Policy di inbound

  • Quando arriva una richiesta, APIM valuta prima le policy di inbound
  • Esempio: rendi compatibili le vecchie app con nuove API aggiungendo dati al payload
  • Le policy di inbound possono bloccare tentativi malevoli
  • Rilevano richieste malformate o dati mancanti
  • Questa barriera iniziale evita che dati errati raggiungano i servizi

Aumento dati in inbound

Validazione richieste

Azure API Management

Sicurezza e throttling

Policy di inbound per la sicurezza

Applicare quote alle richieste

  • Limitano i client eccessivi, garantendo uso equo e protezione del backend
  • Le policy di inbound gestiscono anche la sicurezza
  • Policy comune: validare un JWT (JSON Web Token)
  • Pensa al JWT come a una carta d’identità digitale inviata dal client
  • La policy validate-jwt verifica che sia valido, non scaduto e da un issuer fidato (es. Entra ID)
  • Per più controllo: rate limiting e quote
Azure API Management

Policy di outbound

  • Dopo il backend, le policy di outbound regolano le risposte prima del ritorno
  • Come al ristorante: richiesta -> cucina (backend) -> impiattamento (policy di outbound)
  • Le policy di outbound possono:
    • Rimuovere parti indesiderate (es. header sensibili)
    • Aggiungere istruzioni (es. direttive di caching)
    • Cambiare formato (es. convertire XML in JSON)

Aumento dati in risposta

Trasformazione della risposta

  • Le risposte soddisfano le attese del client, a prescindere dal backend
Azure API Management

Passons à la pratique !

Azure API Management

Preparing Video For Download...