Implementare le policy API
Azure API Management
Fiodar Sazanavets
Senior Software Engineer at Microsoft
Introduzione alle policy API
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
Panoramica delle policy di API Management
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
Esempio: compatibilità all’indietro
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
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
Sicurezza e throttling
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
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)
Le risposte soddisfano le attese del client, a prescindere dal backend
Passons à la pratique !
Azure API Management
Preparing Video For Download...