Configurare Frontdoor di Azure con siti Power Pages

In qualità di creatore di siti Web puoi usare Frontdoor di Azure con Power Pages per usarne le funzionalità di memorizzazione nella cache perimetrale e di Web Application Firewall (WAF). In questo articolo imparerai a configurare Frontdoor di Azure con Power Pages.

Nota

Segui questi passaggi per configurare Frontdoor di Azure con Power Pages:

  1. Impostare il nome di dominio personalizzato e l'endpoint di Frontdoor di Azure che gli utenti del sito Web utilizzeranno.
  2. Configurare il sito Power Pages come origine.
  3. Impostare regole di gestione per memorizzare nella cache le richieste statiche.
  4. Impostare regole WAF per analizzare le richieste in arrivo.
  5. Impostare il sito affinché accetti il traffico solo da Frontdoor di Azure.

Impostare il nome di dominio personalizzato e l'endpoint di Frontdoor di Azure

In questa sezione imparerai come configurare il servizio Frontdoor di Azure e abilitare un nome di dominio personalizzato per questa impostazione.

Prerequisiti

  • Una sottoscrizione di Azure con l'accesso per creare nuovi servizi.

  • Un nome di dominio personalizzato e l'accesso al provider DNS per l'impostazione del nome di dominio personalizzato.

  • Un certificato SSL che verrà utilizzato per il nome di dominio personalizzato. Il certificato deve soddisfare i requisiti minimi per Power Pages.

  • Accesso proprietario a Power Pages, per impostare il nome di dominio personalizzato.

Impostare l'endpoint Frontdoor di Azure

Nota

Se hai già creato la risorsa Frontdoor di Azure, vai al passaggio 3 della procedura seguente.

  1. Accedi al portale di Azure e crea una nuova risorsa Frontdoor di Azure (Standard o Premium). Maggiori informazioni: Avvio rapido: creare un profilo Standard/Premium di Frontdoor di Azure - Portale di Azure

    Creare una risorsa Frontdoor di Azure.

  2. Seleziona Creazione rapida.

    Suggerimento

    La maggior parte delle impostazioni di Frontdoor di Azure può essere modificata in un secondo momento.

    Creare le impostazioni di Frontdoor di Azure.

  3. Selezionare o compilare i seguenti dettagli per configurare la risorsa.

    Opzione Descrizione
    Dettagli di progetto Impostazioni relative all'organizzazione delle risorse, simili a qualsiasi altra risorsa di Azure.
    Sottoscrizione Selezionare la sottoscrizione in cui verrà creata la risorsa Frontdoor di Azure.
    Gruppo di risorse Seleziona il gruppo di risorse per Frontdoor di Azure. Puoi anche creare un nuovo gruppo di risorse.
    Percorso gruppo di risorse Il percorso del gruppo di risorse.
    Dettagli del profilo La configurazione per Frontdoor di Azure.
    Nome Nome della risorsa Frontdoor di Azure.
    Livello Seleziona un livello per la risorsa Frontdoor di Azure. Per questo articolo abbiamo selezionato il livello Premium, che consente l'accesso al set di regole gestito da Microsoft e al set di regole di prevenzione dei bot per WAF.
    Impostazioni endpoint Impostazioni l'endpoint Frontdoor di Azure.
    Nome endpoint Immettere un nome per le richieste di Frontdoor di Azure. Questo nome è l'URL effettivo che servirà il traffico per gli utenti. Successivamente, imposteremo un nome di dominio personalizzato che punta a questo URL.
    Tipo di origine Seleziona Personalizza.
    Nome host origine Il nome host del sito Power Pages.
    Formato: yoursitename.powerappsportals.com o yoursitename.microsoftcrmportals.com senza https:// all'inizio.
    Ad esempio, contoso.powerappsportals.com
    Collegamento privato Non abilitare il servizio di collegamento privato.
    Memorizzazione nella cache Abilita la memorizzazione nella cache. La memorizzazione nella cache utilizza le funzionalità di memorizzazione nella cache perimetrale per il contenuto statico.
    La memorizzazione nella cache è discussa ulteriormente in "Impostare le regole di gestione per memorizzare nella cache le richieste statiche," più avanti in questo articolo.
    Comportamento di memorizzazione nella cache della stringa di query Seleziona Usa stringa di query. Con questa opzione attivata, una pagina con contenuto dinamico che soddisfa la stringa di query prenderà in considerazione la stringa di query.
    Compressione Abilita la compressione.
    Criteri WAF Crea un nuovo criterio WAF o usane uno esistente.
    Per informazioni sui criteri WAF, vedi "Impostare regole WAF per analizzare le richieste in arrivo" più avanti in questo articolo, e ancheEsercitazione: creare un criterio di Web Application Firewall in Frontdoor di Azure utilizzando il portale di Azure.
  4. Seleziona Esamina + Crea e attendi il completamento della configurazione. In genere sono necessari da 5 a 10 minuti.<

  5. Convalida la configurazione navigando fino all'URL endpoint (ad esempio, contoso.example.azurefd.net) e verificando che mostri il contenuto del portale del sito Power Pages.

    Navigare nell'endpoint.

    Suggerimento

    Se viene visualizzata una risposta "404 - Non trovato", l'installazione potrebbe non essere terminata. Aspetta un po' e riprova.

Impostare un nome di dominio personalizzato

Fino ad ora l'endpoint di Frontdoor di Azure è stata configurato per servire il traffico dal backend di Power Pages. Tuttavia, questa configurazione usa ancora l'URL di Frontdoor di Azure e ciò causerà problemi come errori di controllo captcha o problemi di ridimensionamento.

I browser Web rifiutano i cookie impostati da Power Pages quando usi un URL di endpoint di Frontdoor di Azure differente dall'URL del sito. Pertanto, devi impostare un nome di dominio personalizzato sia per il sito che per l'endpoint Frontdoor di Azure.

  1. Imposta un nome di dominio personalizzato nel sito. Ulteriori informazioni: Aggiungere un nome di dominio personalizzato.

  2. Abilita il nome di dominio personalizzato del sito nella risorsa Frontdoor di Azure effettuando le seguenti operazioni:

    1. Aggiorna il provider DNS rimuovendo il record CNAME creato in precedenza durante l'impostazione del dominio personalizzato per Power Pages. Solo CNAME deve essere aggiornato; non rimuovere il nome host di origine. DNS punterà CNAME all'endpoint di Frontdoor di Azure. L'unico scopo di aggiungere CNAME era garantire che il nome host personalizzato sia presente in Power Pages. Questa presenza garantisce che Power Pages possa servire il traffico a questo nome di dominio personalizzato tramite Frontdoor di Azure e tutti i cookie del sito avranno anche il dominio impostato correttamente.

    2. Imposta il nome di dominio personalizzato nell'endpoint di Frontdoor di Azure seguendo questi passaggi: Creare un dominio personalizzato nella SKU Standard/Premium di Frontdoor di Azure usando il portale di Azure.

  3. Verifica quanto segue per convalidare l'impostazione:

    1. Il nome di dominio personalizzato punta all'endpoint di Frontdoor di Azure. Usa nslookup per verificare che una voce CNAME per l'endpoint di Frontdoor di Azure sia restituita correttamente. Se la voce CNAME punta ancora a Power Pages, devi correggerla.

    2. L'accesso al nome di dominio personalizzato mostra la pagina del sito Web Power Pages.

Dopo aver eseguito questi passaggi, disponi di un'impostazione di base dell'endpoint di Frontdoor di Azure per il sito Web. Nei passaggi successivi, aggiornerai varie impostazioni e regole per rendere questa configurazione più efficiente e migliore per gestire diversi casi d'uso.

Configurare il sito come server di origine

Il passaggio successivo consiste nell'ottimizzare le impostazioni del server di origine per garantire che l'impostazione funzioni correttamente. Utilizza Gestisci endpoint nelle configurazioni di Frontdoor di Azure nel portale di Azure per aggiornare le impostazioni del gruppo di origine.

Gestisci endpoint.

Durante l'impostazione di creazione rapida che hai eseguito in precedenza, hai inserito i dettagli dell'endpoint che hanno creato automaticamente la configurazione con il nome default-origin-group(associated) (questo nome può variare a seconda delle impostazioni internazionali). Per questo passaggio, modificherai le impostazioni per default-origin-group. L'immagine seguente mostra le impostazioni per questo passaggio quando si apre il gruppo di origine per la prima volta.

Gruppo di origine come appare la prima volta.

Le origini in Frontdoor di Azure rappresentano il servizio di back-end a cui si connettono i server perimetrali di Frontdoor di Azure per servire il contenuto agli utenti. Puoi aggiungere più origini all'istanza di Frontdoor di Azure per ottenere contenuto da più servizi di back-end.

Suggerimento

Power Pages fornisce un'elevata disponibilità al relativo livello di servizio, quindi un singolo server di origine è sufficiente quando si impostano origini per i siti.

La singola origine dei siti Power Pages deve puntare al nome host del sito (che hai impostato in precedenza). Se non hai seguito i passaggi di impostazione di creazione rapida, puoi aggiungere una nuova origine che punti al nome host del sito.

L'immagine seguente mostra un esempio della configurazione di origine.

Configurazione dell'origine.

Utilizza le seguenti impostazioni per configurare l'origine dei siti Power Pages.

Opzione Tipo o valore di configurazione
Tipo di origine Seleziona Personalizza.
Nome host origine Immetti il nome host del sito. Ad esempio, contoso.powerappsportals.com
Intestazione host di origine Inserisci il nome di dominio personalizzato o lascia vuoto. Il primo garantisce che Frontdoor di Azure invii l'intestazione di origine come nome di dominio personalizzato; il secondo causa il passaggio di tutto ciò che l'utente ha fornito durante la creazione della richiesta.
Porta HTTP 80
Porta HTTPS 443
Priorità 1
Spessore 1000
Collegamento privato Disattivato
Condizione Seleziona la casella di controllo Abilita questa origine.

Dopo aver configurato l'origine e essere tornato al gruppo di origine, aggiorna le impostazioni per i probe di integrità e le opzioni di bilanciamento del carico come descritto nella tabella seguente.

Opzione Tipo o valore di configurazione
Probe di integrità I probe di integrità sono un meccanismo per garantire che il servizio di origine sia attivo e in esecuzione e per prendere decisioni sull'instradamento del traffico in base ai risultati del probe. In questo caso, non abbiamo bisogno di probe di integrità, quindi l'abbiamo disattivato.
Bilanciamento del carico Poiché abbiamo una singola configurazione di origine e i probe di integrità sono disattivati, questa impostazione non avrà alcun ruolo in questa configurazione.

Verifica che la configurazione del gruppo di origine sia simile all'immagine seguente.

Convalidare la configurazione di origine.

Impostare regole di gestione per memorizzare nella cache le richieste statiche

Le route determinano il modo in cui utilizziamo le funzionalità di memorizzazione nella cache perimetrale di Frontdoor di Azure per migliorare la scalabilità di un sito. L'impostazione delle route è anche un passaggio importante per garantire che non stiamo memorizzando nella cache il contenuto dinamico servito dal sito, il che può portare all'accesso involontario ai dati.

Configurare le route.

Per l'impostazione delle regole, dovremo fare quanto segue:

  1. Impostare la configurazione delle route.
  2. Impostare un set di regole.
  3. Associare il set di regole a una route.
  4. Convalidare le regole e la configurazione delle route.

Impostare la configurazione delle route

Per impostare la configurazione delle route, seleziona Gestisci endpoint nel riquadro sinistro, seleziona Route, quindi seleziona la route predefinita. Default-route viene creato durante l'esperienza di impostazione di creazione rapida.

Configurazione delle route.

Aggiorna la configurazione delle route come descritto nella tabella seguente.

Opzione Configurazione
Sezione Domini
Domini Il nome di dominio che hai utilizzato durante l'impostazione del nome di dominio personalizzato in precedenza.
Criteri di corrispondenza Imposta su /* (valore predefinito); tutte le richieste del sito verranno inviate alla stessa origine nella nostra impostazione.
Protocolli accettati Imposta su Solo HTTPS per garantire che tutto il traffico servito sia sicuro.
Reindirizza Seleziona la casella di controllo Reindirizza tutto il traffico per utilizzare HTTPS.
Sezione Gruppo di origine
Gruppo di origine Imposta sul gruppo di origine definito in precedenza.
Percorso origine Mantieni vuoto.
Protocollo di inoltro Imposta su Solo HTTPS o su Abbina richiesta in arrivo.
Sezione Memorizzazione nella cache
Memorizzazione nella cache Seleziona la casella di controllo Abilita memorizzazione nella cache se intendi utilizzare la memorizzazione nella cache perimetrale.
Comportamento di memorizzazione nella cache della stringa di query Seleziona Usa stringa di query per garantire che il contenuto dinamico basato sulla stringa di query possa essere servito.
Compressione Seleziona Abilita compressione per ottimizzare la distribuzione dei contenuti.

Configurare un set di regole

I set di regole regolano il modo in cui il contenuto deve essere memorizzato nella cache. Questo passaggio è importante poiché regola il modo in cui il contenuto verrà memorizzato nella cache dai server perimetrali per migliorare la scalabilità per il sito. Tuttavia, un set di regole configurato in modo errato può portare alla memorizzazione nella cache di contenuto dinamico che deve essere servito in modo specifico per ogni singolo utente.

Per impostare correttamente il set di regole, è importante comprendere il tipo di contenuto servito dal sito. Questa comprensione consente di configurare il set di regole utilizzando regole efficaci. Per lo scenario in questo articolo, il sito utilizza contenuto dinamico in tutte le pagine e serve anche file statici; pertanto, il sito sta cercando di ottenere quanto segue:

  • Tutti i file statici vengono memorizzati nella cache e serviti dai server perimetrali.
  • Nessuno dei contenuti della pagina viene memorizzato nella cache.

Per configurare questo set di regole

  1. Nel riquadro di sinistra, seleziona Set di regole, quindi seleziona Aggiungi un set di regole.

    Configurare set di regole.

  2. Immetti un nome per il set di regole, quindi salvalo.

    Creare un nuovo set di regole.

Ora configuriamo il set di regole in base al requisito aziendale, con la configurazione seguente per soddisfare i requisiti per lo scenario menzionato in precedenza.

Requisito: Tutti i file statici vengono memorizzati nella cache e serviti dai server perimetrali

Il sito in questo scenario può contenere file statici con le estensioni di nome file .css, .png, .jpg, .js, .svg, .woff o .ico. Quindi, abbiamo bisogno di una regola per valutare l'estensione di nome file della richiesta e controllare tipi di file specifici.

Nota

Esistono altri modi per scrivere questa regola, ad esempio utilizzando l'URL della richiesta o il nome di file. Per ulteriori informazioni sulle condizioni di corrispondenza delle regole di Frontdoor di Azure, vedi Condizioni di corrispondenza del motore delle regole di Frontdoor di Azure.

Esempio della condizione Estensioni file richiesta.

Screenshot di una condizione IF denominata "Estensione file richiesta" con Operatore impostato su Uguale, Valore impostato su css png jpg js svg woff ico e Trasformazione maiuscole/minuscole impostata su Nessuna trasformazione.

Nella seguente configurazione dell'azione, sovrascrivi l'intestazione della cache impostata da Power Pages in modo che questi file vengano memorizzati nella cache un po' più a lungo nel browser. Per impostazione predefinita, Power Pages imposta la scadenza della memorizzazione nella cache su un giorno. Questo comportamento verrà sovrascritto in questo scenario e impostato su sette giorni configurando l'azione Scadenza della cache e impostando Comportamento cache su Sostituisci come mostrato nell'immagine seguente.

Esempio di azione Scadenza cache.

Al termine, la regola completa si presenta come l'immagine seguente.

Regola finale dell'estensione del file.

Requisito: Nessuno dei contenuti della pagina viene memorizzato nella cache

In generale, l'impostazione del sito Power Pages garantisce che se una pagina include un modulo incorporato (nel senso che serve contenuto specifico a un record), avrà il relativo valore di intestazione Cache-control impostato su privato, di modo che Frontdoor di Azure non memorizzi la richiesta nella cache. Tuttavia, questo metodo non tiene conto degli scenari in cui si utilizzano modelli liquidi per incorporare contenuto specifico dell'utente nelle pagine, ad esempio la visualizzazione di un record specifico a un insieme di utenti. Quindi, aggiungeremo una regola esplicita per garantire che nessuna pagina del sito Web venga memorizzata nella cache.

Il primo passaggio consiste nell'impostare la condizione. La condizione esegue un controllo inverso rispetto a quanto fatto nella prima regola e controlla che la richiesta non includa un'estensione di nome file che punta a uno dei tipi di file che vogliamo memorizzare nella cache.

Esempio della condizione Estensioni file richiesta Diverso da.

Screenshot di una condizione IF denominata "Estensione file richiesta" con Operatore impostato su Diverso da, Valore impostato su css png jpg js svg woff ico e Trasformazione maiuscole/minuscole impostata su Nessuna trasformazione.

Nella condizione di azione, simile alla regola precedente, scriveremo un'azione per Scadenza cache. Tuttavia, questa volta imposteremo il comportamento su Ignora cache. Ciò garantirà che qualsiasi richiesta che soddisfa questa regola non venga memorizzata nella cache.

Configurazione di Scadenza cache.

La regola completa si presenta come l'immagine seguente.

Completare la regola per la cache del contenuto della pagina.

Associare il set di regole a una route

Dopo aver creato il set di regole, il passaggio successivo consiste nell'associarlo a una route.

  1. Seleziona il set di regole, quindi seleziona Associa una route nella barra dei comandi.

    Selezionare per associare una route in un set di regole.

  2. Seleziona il nome dell'endpoint e la route disponibile. Potrebbero essere disponibili più route, quindi seleziona quello che hai configurato in precedenza.

    Associare una route

  3. Se disponi di più set di regole e desideri definire l'ordine in cui devono essere valutati, seleziona Cambia ordini di set di regole e configurare l'ordine. Il nostro scenario di esempio ha un solo set di regole.

    Cambiare l'ordine dei set di regole.

  4. Seleziona Fine per terminare.

Convalidare le regole e la configurazione delle route

Per verificare che le regole e le configurazioni delle route funzionino correttamente, assicurati che tutto il traffico venga servito tramite HTTPS e che le regole di memorizzazione nella cache vengano valutate correttamente.

Per garantire che tutto il traffico venga servito tramite HTTPS e che tutte le chiamate HTTP siano reindirizzate a HTTPS

  • Immetti il nome di dominio in un browser e assicurati che l'URL cambi automaticamente in HTTPS durante il rendering del contenuto.

Per garantire che le regole di memorizzazione nella cache siano valutate e funzionino come previsto

Per controllare le regole di memorizzazione nella cache, dovremo analizzare le tracce di rete nella barra degli strumenti per sviluppatori di un browser Web per verificare che le intestazioni di memorizzazione nella cache per i diversi tipi di contenuto siano impostate correttamente.

Nota

Le modifiche alle regole potrebbero richiedere fino a 10 minuti per essere applicate.

  1. Apri una nuova scheda del browser, apri la barra degli strumenti per sviluppatori e accedi all'URL del sito Power Pages (assicurati di aprire la barra degli strumenti per sviluppatori prima di accedere all'URL).

  2. Vai alla scheda relativa alla rete per vedere tutte le richieste di rete.

  3. Seleziona una richiesta per qualsiasi file CSS dall'elenco delle richieste.

    Nella sezione Intestazioni di risposta dei dettagli della richiesta, assicurati che un'intestazione denominata x-cache sia presente. Questa intestazione garantisce che la richiesta venga servita tramite i server perimetrali e che possa essere memorizzata nella cache. Se il valore di x-cache è impostato su CONFIG_NOCACHE o qualsiasi altro valore contenente il termine NOCACHE, l'impostazione non è corretta.

    Intestazione di risposta denominata x-cache con valore di riscontro nella cache.

  4. Come nel passaggio precedente, seleziona una richiesta Pagina e controllane le intestazioni. Se x-cache è impostato su CONFIG_NOCACHE, la configurazione funziona correttamente.

    Intestazione di risposta denominata x-cache con valore CONFIG_NOCACHE per una pagina.

Impostare regole WAF per analizzare le richieste in arrivo

Il passaggio successivo nell'impostazione consiste nel configurare le regole WAF sulle richieste in arrivo. In questo articolo, tratteremo solo i passaggi di base. Per la configurazione WAF avanzata, vedi Azure Web Application Firewall di Azure in Frontdoor di Azure.

  1. Nel riquadro sinistro, seleziona Sicurezza.

    Scheda Sicurezza per la configurazione di Frontdoor di Azure.

    Durante l'impostazione di creazione rapida, abbiamo già impostato un nuovo criterio WAF che viene visualizzato qui. Tuttavia, se hai ignorato questo passaggio, puoi impostare un nuovo criterio selezionando Nuovo.

  2. Seleziona il nome del criterio WAF.

  3. Seleziona Impostazioni criteri e quindi:

    1. Abilita analisi corpo della richiesta: seleziona questa casella di controllo se desideri che anche il corpo della richiesta venga analizzato oltre a cookie, intestazioni e URL.

    2. URL di reindirizzamento: immetti un URL non del portale. Questo URL è dove l'utente verrebbe reindirizzato se una regola WAF fosse impostata per il reindirizzamento. Assicurati che questo URL sia accessibile pubblicamente e in modo anonimo.

    3. Codice di stato blocco richiesta: questo codice di stato HTTP viene restituito all'utente se la richiesta è bloccata da WAF.

    4. Corpo della risposta di blocco: qui puoi aggiungere un messaggio personalizzato che l'utente dovrà mostrato all'utente se la richiesta è bloccata da WAF.

    Impostazioni dei criteri per WAF.

  4. Per configurare il set di regole in base al quale verrà valutata ogni richiesta, procedi come segue:

    1. Nel riquadro a sinistra seleziona Regole gestite.

      Regole gestite - set di regole

    2. Nella barra dei comandi, seleziona Assegna, quindi seleziona dall'elenco dei set di regole predefiniti. I set di regole gestiti sono gestiti da Microsoft e aggiornati regolarmente. Per ulteriori informazioni sui set di regole, vedi Regole e gruppi di regole DRS di Web Application Firewall.

      Gestisci set di regole - Assegna

Dopo l'assegnazione del set di regole gestito, l'impostazione risulta completata. Come passaggio aggiuntivo, puoi anche esaminare l'impostazione degli elenchi di esclusione per le regole esistenti e l'abilitazione delle regole personalizzate.

Importante

Per impostazione predefinita, per WAF è impostata la modalità Criteri di rilevamento, che rileva i problemi relativi al set di regole definito e li registra. Tuttavia, questa modalità non blocca le richieste. Per bloccare le richieste, è necessario attivare la modalità Prevenzione per WAF.

Ti consigliamo di eseguire test approfonditi in modalità Prevenzione per verificare che tutti gli scenari funzionino e per assicurarti di non dover modificare il set di regole o aggiungere criteri di esclusione. Dovresti abilitare la modalità di prevenzione solo dopo aver verificato che l'intera impostazione funzioni come previsto.

Impostare i portali di Power Pages per accettare il traffico solo da Frontdoor di Azure

L'ultimo passaggio di questa impostazione consiste nell'assicurarsi che il sito Power Pages accetti il traffico solo da Frontdoor di Azure. Per questa verifica, dovremo abilitare le restrizioni degli indirizzi IP nel sito.

Per trovare l'intervallo di indirizzi IP su cui opera Frontdoor di Azure, vedi Come posso bloccare l'accesso al mio back-end solo a Frontdoor di Azure?.

Nota

Power Pages non supporta il filtro basato su X-Azure-FDID.

Aumentare il tempo di risposta di origine

Per impostazione predefinita, Frontdoor di Azure ha un timeout di risposta di origine di 60 secondi. Tuttavia, consigliamo di aumentarlo a 240 secondi per garantire che gli scenari di lunga durata come caricamenti di file o l'esportazione in Excel funzionino come previsto.

  1. Nel riquadro a sinistra, seleziona Gestisci endpoint.

    Selezionare Gestisci endpoint.

  2. Seleziona Modifica endpoint.

    Selezionare Modifica endpoint.

  3. Nell'angolo in alto a destra seleziona Proprietà endpoint.

  4. Imposta il tempo di risposta di origine su 240 secondi, quindi seleziona Aggiorna.

    Impostare il tempo di risposta di origine dell'endpoint su 240 secondi.

Vedi anche

Che cos'è Frontdoor di Azure?
Guida introduttiva: creare un profilo Forntdoor di Azure - portale di Azure
Creare un dominio personalizzato nella SKU Standard/Premium di Frontdoor di Azure usando il portale di Azure
Come posso bloccare l'accesso al mio back-end solo a Frontdoor di Azure?
Condizioni di corrispondenza del motore delle regole di Frontdoor di Azure