Configurare un endpoint privato in App Web statiche di Azure
È possibile usare un endpoint privato (detto anche collegamento privato) per limitare l'accesso all'app Web statica in modo che sia accessibile solo dalla rete privata.
Funzionamento
Un'Rete virtuale di Azure (VNet) è una rete esattamente come in un data center tradizionale, ma le risorse all'interno della rete virtuale comunicano tra loro in modo sicuro nella rete backbone Microsoft.
La configurazione di App Web statiche con un endpoint privato consente di usare un indirizzo IP privato dalla rete virtuale. Dopo aver creato questo collegamento, l'app Web statica è integrata nella rete virtuale. Di conseguenza, l'app Web statica non è più disponibile per la rete Internet pubblica ed è accessibile solo dai computer all'interno della rete virtuale di Azure.
Nota
Posizionare l'applicazione dietro un endpoint privato significa che l'app è disponibile solo nell'area in cui si trova la rete virtuale. Di conseguenza, l'applicazione non è più disponibile in più punti di presenza.
Se l'app dispone di un endpoint privato abilitato, il server risponde con un 403
codice di stato se la richiesta proviene da un indirizzo IP pubblico. Questo comportamento si applica sia all'ambiente di produzione che a qualsiasi ambiente di gestione temporanea. L'unico modo per raggiungere l'app consiste nell'usare l'endpoint privato distribuito all'interno della rete virtuale.
La risoluzione DNS predefinita dell'app Web statica esiste ancora e instrada a un indirizzo IP pubblico. L'endpoint privato espone 2 indirizzi IP all'interno della rete virtuale, uno per l'ambiente di produzione e uno per gli ambienti di staging. Per assicurarsi che il client sia in grado di raggiungere correttamente l'app, assicurarsi che il client risolva il nome host dell'app nell'indirizzo IP appropriato dell'endpoint privato. Questa operazione è necessaria per il nome host predefinito e per tutti i domini personalizzati configurati per l'app Web statica. Questa risoluzione viene eseguita automaticamente se si seleziona una zona DNS privata durante la creazione dell'endpoint privato (vedere l'esempio seguente) ed è la soluzione consigliata.
Se ci si connette da locale o non si vuole usare una zona DNS privata, configurare manualmente i record DNS per l'applicazione in modo che le richieste vengano instradate all'indirizzo IP appropriato dell'endpoint privato. Altre informazioni sulla risoluzione DNS dell'endpoint privato sono disponibili qui.
Nota
Gli endpoint privati limitano il traffico in ingresso che passa al sito Web a una rete virtuale specifica. Non si applicano alle distribuzioni di nuovi asset del sito.
Prerequisiti
- Un account Azure con una sottoscrizione attiva.
- Una rete virtuale di Azure.
- Un'applicazione distribuita con App Web statiche di Azure che usa il piano di hosting Standard.
Creare un endpoint privato
In questa sezione viene creato un endpoint privato per l'app Web statica.
Importante
L'app Web statica deve essere distribuita nel piano di hosting Standard per usare endpoint privati. È possibile modificare il piano di hosting dall'opzione Piano di hosting nel menu laterale.
Nel portale aprire l'app Web statica.
Selezionare l'opzione Endpoint privati dal menu laterale.
Selezionare Aggiungi.
Nella finestra di dialogo "Aggiungi endpoint privato" immettere queste informazioni:
Impostazione valore Name Immettere myPrivateEndpoint. Abbonamento Selezionare la propria sottoscrizione. Rete virtuale Selezionare la rete virtuale. Subnet Selezionare la subnet. Integra con la zona DNS privato Lasciare l'impostazione predefinita Sì. Selezionare OK.
Nota
Il nome della zona DNS privata dipende dal suffisso del nome di dominio predefinito dell'app Web statica. Ad esempio, se il suffisso di dominio predefinito dell'app è 3.azurestaticapps.net
, il nome della zona DNS privata è privatelink.3.azurestaticapps.net
. Quando viene creata una nuova app Web statica, il suffisso di dominio predefinito potrebbe essere diverso dal suffisso di dominio predefinito delle app Web statiche precedenti. Se si usa un processo di distribuzione automatica per creare la zona DNS privata, è possibile usare la DefaultHostname
proprietà nell'app per estrarre il suffisso di dominio a livello di codice. Il valore della DefaultHostname
proprietà è simile <STATIC_WEB_APP_DEFAULT_DOMAIN_PREFIX>.<PARTITION_ID>.azurestaticapps.net
a o STATIC_WEB_APP_DEFAULT_DOMAIN_PREFIX.azurestaticapps.net
. Il suffisso di dominio predefinito è <PARTITION_ID>.azurestaticapps.net
simile a o azurestaticapps.net
.
Test dell'endpoint privato
Poiché l'applicazione non è più disponibile pubblicamente, l'unico modo per accedervi è dall'interno della rete virtuale. Per testare, configurare una macchina virtuale all'interno della rete virtuale e passare al sito.