Front door è un servizio della piattaforma Microsoft Azure che si pone davanti a tutte le richieste HTTP compiendo molteplici compiti che vanno dal firewall fino al caching delle risposte. Tra queste rientra anche la possibilità di personalizzare e intervenire nelle richieste provenienti cambiandone gli header o intervenendo con redirect e rewrite.
Questo è possibile attraverso i rule set, delle regole che si possono definire e poi applicare a uno o più endpoint. Si definiscono nella sezione omonima e si basano su delle condizioni che vanno ad analizzare le richieste in tutti i suoi aspetti: indirizzo, header, tipo di dispositivo, porta, protocollo ecc. Quando creiamo una nuova regola dobbiamo prima di tutto dare un nome e definire le condizioni, come mostrato nella figura.

Per ogni condizione definiamo il parametro, l'operatore, che può applicare semplici contains fino ad articolate regex, e un'eventuale manipolazione del valore per essere sicuri di lavorare con la stringa desiderata. Nell'esempio precedente intercettiamo tutte le richieste il cui host name non inizia con www. Lo scopo è quello di intercettare le richieste ad un naked domain e girarle verso un altro dominio.
Di conseguenza procediamo con un'azione che può essere una modifica all'header della richiesta o della risposta, il rewrite dell'indirizzo un redirect. Scegliamo quest'ultimo per effettuare un 301 (move permanent) al dominio destinatario.

Nell'esempio, mantenendo vuoti path e query string otteniamo un redirect che conterrà il percorso originariamente richiesto. Una volta creata la regola, procediamo nella sezione front door manager, selezioniamo l'endpoint di nostro interesse e lo colleghiamo alla regola.

I rule set sono molto potenti e permettono anche di usare delle variabili, oggetto di futuri script.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Effettuare chiamate API tramite GitHub App
Usare la parola chiave field per semplificare la scrittura di proprietà in C#
Esporre un server MCP esistente con Azure API Management
Supporto semplificato per le left join in Entity Framework 10
Raggruppamento degli aggiornamenti di dipendenze tra directory in un monorepo con Dependabot
Esporre tool MCP da API REST con Azure App Service
Analizzare il contenuto di una issue con GitHub Models e AI
Proteggere l'endpoint dell'agente A2A delle Logic App
How to be a DevOps engineer in the AI era
Rendere affidabile lo scale out su Azure App Service
Definire il colore di una scrollbar HTML tramite CSS
Abilitare .NET 10 su Azure App Service e Azure Functions


