Che cos'è il servizio di collegamento privato di Azure?
Il servizio Collegamento privato di Azure è il riferimento a un servizio personalizzato basato su Collegamento privato di Azure. Il servizio in esecuzione dietro Azure Load Balancer Standard può essere abilitato per l'accesso al collegamento privato in modo che i consumer del servizio possano accedervi privatamente dalle proprie reti virtuali. I clienti possono creare un endpoint privato all'interno della loro rete virtuale ed eseguirne il mapping a questo servizio. Questo articolo illustra i concetti correlati al lato del provider di servizi.
Figura: Servizio Collegamento privato di Azure.
Workflow
Figura: flusso di lavoro del servizio Collegamento privato di Azure.
Creare il servizio collegamento privato
Configurare l'applicazione affinché venga eseguita dietro un servizio di bilanciamento del carico standard nella rete virtuale. Se l'applicazione è già configurata dietro un servizio di bilanciamento del carico standard, è possibile ignorare questo passaggio.
Creare un servizio collegamento privato che fa riferimento al servizio di bilanciamento del carico precedente. Nel processo di selezione del servizio di bilanciamento del carico, scegliere la configurazione IP front-end in cui si vuole ricevere il traffico. Scegliere una subnet per gli indirizzi IP NAT per il servizio collegamento privato. È consigliabile avere almeno otto indirizzi IP NAT disponibili nella subnet. Tutto il traffico consumer sembra provenire da questo pool di indirizzi IP privati al provider di servizi. Scegliere le proprietà/impostazioni appropriate per il servizio collegamento privato.
Nota
Il servizio Collegamento privato di Azure è supportato solo in Load Balancer Standard.
Condividere il servizio
Dopo aver creato un servizio Collegamento privato, Azure genererà un moniker univoco a livello globale denominato alias in base al nome specificato per il servizio. È possibile condividere offline l'alias o l'URI della risorsa del servizio con i clienti. I consumer possono avviare una connessione collegamento privato usando l'alias o l'URI della risorsa.
Gestire le richieste di connessione
Dopo che un consumer avvia una connessione, il provider di servizi può accettare o rifiutare la richiesta di connessione. Tutte le richieste di connessione verranno elencate nella proprietà privateendpointconnections nel servizio Collegamento privato.
Eliminare il servizio
Se il servizio collegamento privato non è più in uso, è possibile eliminarlo. Tuttavia, prima di eliminare il servizio, assicurarsi che non vi siano connessioni endpoint private associate. È possibile rifiutare tutte le connessioni ed eliminare il servizio.
Proprietà
Un servizio collegamento privato specifica le proprietà seguenti:
Proprietà | Spiegazione |
---|---|
Stato del provisioning (provisioningState) | Proprietà di sola lettura che elenca lo stato di provisioning corrente per il servizio collegamento privato. Gli stati di provisioning applicabili sono: Eliminazione, Operazione non riuscita, Operazione riuscita, *Aggiornamento. Quando lo stato di provisioning è Operazione riuscita, il provisioning del servizio Collegamento privato è stato eseguito correttamente. |
Alias (alias) | Alias è una stringa di sola lettura globalmente univoca per il servizio. Consente di mascherare i dati dei clienti per il servizio e allo stesso tempo crea un nome facile da condividere. Quando si crea un servizio collegamento privato, Azure genera l'alias per il servizio che è possibile condividere con i clienti. I clienti possono usare questo alias per richiedere una connessione al servizio. |
Visibilità (visibilità) | La visibilità è la proprietà che controlla le impostazioni di esposizione per il servizio collegamento privato. I provider di servizi possono scegliere di limitare l'esposizione al servizio agli abbonamenti con autorizzazioni di controllo degli accessi in base al ruolo di Azure. È anche possibile usare un set limitato di abbonamenti per limitare l'esposizione. |
Approvazione automatica (autoApproval) | L'approvazione automatica controlla l'accesso automatico al servizio collegamento privato. Gli abbonamenti specificati nell'elenco di approvazione automatica vengono approvati automaticamente quando viene richiesta una connessione da endpoint privati. |
Configurazione IP front-end del servizio di bilanciamento del carico (loadBalancerFrontendIpConfigurations) | Il servizio collegamento privato è associato all'indirizzo IP front-end di un servizio Load Balancer Standard. Tutto il traffico destinato al servizio raggiungerà il front-end di Load Balancer Standard. È possibile configurare le regole di bilanciamento del carico software per indirizzare il traffico a pool back-end appropriati in cui sono in esecuzione le applicazioni. Le configurazioni IP front-end del servizio di bilanciamento del carico sono diverse dalle configurazioni IP NAT. |
Configurazione IP NAT (ipConfigurations) | Questa proprietà fa riferimento alla configurazione IP NAT (Network Address Translation) per il servizio collegamento privato. L'IP NAT può essere scelto da qualsiasi subnet nella rete virtuale di un provider di servizi. Il servizio collegamento privato esegue il NAT sul lato di destinazione sul traffico di collegamento privato. Questo NAT garantisce che non vi sia alcun conflitto IP tra lo spazio di indirizzi di origine (lato consumer) e quello di destinazione (provider di servizi). Sul lato del provider di servizi o di destinazione, l'indirizzo IP NAT viene visualizzato come IP di origine per tutti i pacchetti ricevuti dal servizio. L'indirizzo IP di destinazione viene visualizzato per tutti i pacchetti inviati dal servizio. |
Connessioni endpoint private (privateEndpointConnections) | Questa proprietà elenca gli endpoint privati che si connettono al servizio collegamento privato. Più endpoint privati possono connettersi allo stesso servizio collegamento privato e il provider di servizi può controllare lo stato per singoli endpoint privati. |
Proxy TCP V2 (EnableProxyProtocol) | Questa proprietà consente al provider di servizi di usare il proxy TCP v2 per recuperare le informazioni di connessione relative al consumer del servizio. Il provider di servizi è responsabile della configurazione dei ricevitori per poter analizzare l'intestazione del protocollo proxy v2. |
Dettagli
È possibile accedere al servizio collegamento privato da endpoint privati approvati in qualsiasi area pubblica. L'endpoint privato può essere raggiunto dalla stessa rete virtuale e dalle stesse reti virtuali con peering a livello di area. L'endpoint privato può essere raggiunto da reti virtuali con peering globale e in locale usando connessioni VPN private o ExpressRoute.
Al momento della creazione di un servizio collegamento privato, viene creata un'interfaccia di rete per il ciclo di vita della risorsa. Questa interfaccia non è gestibile dal cliente.
Il servizio collegamento privato deve essere distribuito nella stessa area della rete virtuale e di Load Balancer Standard.
È possibile accedere a un singolo servizio collegamento privato da più endpoint privati appartenenti a reti virtuali, abbonamenti e/o tenant di Active Directory diversi. La connessione viene stabilita tramite un flusso di lavoro di connessione.
Si possono creare più risorse del servizio di collegamento privato nello stesso Load Balancer Standard usando diverse configurazioni IP front-end. Esistono limiti al numero di servizi di collegamento privato che è possibile creare per Load Balancer Standard e per ogni abbonamento. Per informazioni dettagliate, vedere Limiti di Azure.
Il servizio collegamento privato può avere più configurazioni IP NAT collegate. La scelta di più configurazioni IP NAT può aiutare i provider di servizi a ridimensionare. Attualmente, i provider di servizi possono assegnare fino a otto indirizzi IP NAT per ogni servizio di collegamento privato. Con ogni indirizzo IP NAT, è possibile assegnare più porte per le connessioni TCP e quindi aumentare il numero di istanze. È possibile aggiungere più indirizzi IP NAT a un servizio Collegamento privato, ma è necessario mantenere almeno un indirizzo IP NAT dopo la configurazione. È possibile limitare l'eliminazione dell'ultimo indirizzo IP NAT rimanente per assicurarsi che le connessioni attive non siano interessate da indirizzi IP NAT non disponibili.
Alias
Alias è un nome univoco globale per il servizio. Consente di mascherare i dati dei clienti per il servizio e allo stesso tempo crea un nome facile da condividere. Quando si crea un servizio collegamento privato, Azure genera un alias per il servizio che è possibile condividere con i clienti. I clienti possono usare questo alias per richiedere una connessione al servizio.
L'alias è composto da tre parti: Prefisso.GUID.Suffisso
Il prefisso è il nome del servizio. È possibile selezionare il proprio prefisso. Dopo aver creato "Alias", non è possibile modificarlo, quindi selezionare il prefisso in modo appropriato.
Il GUID verrà fornito dalla piattaforma. Questo GUID rende il nome globalmente univoco.
Il suffisso viene aggiunto da Azure: region.azure.privatelinkservice
Alias completo: prefisso. {GUID}.area.azure.privatelinkservice
Controllare l'esposizione del servizio
Il servizio Collegamento privato offre tre opzioni nell'impostazione Visibilità per controllare l'esposizione del servizio. L'impostazione di visibilità determina se un consumer può connettersi al servizio. Ecco le opzioni di impostazione della visibilità, dalla più restrittiva alla meno restrittiva:
Solo controllo degli accessi in base al ruolo: Se il servizio è destinato all'utilizzo privato da reti virtuali diverse di cui si è proprietari, usare il controllo degli accessi in base al ruolo all'interno degli abbonamenti associati allo stesso tenant di Active Directory. La visibilità tra tenant è consentita tramite il controllo degli accessi in base al ruolo.
Limitato in base all'abbonamento: Se il servizio verrà utilizzato in tenant diversi, è possibile limitare l'esposizione a un set limitato di abbonamenti attendibili. Le autorizzazioni possono essere pre-approvate.
Chiunque con lo stesso alias: Se si vuole rendere pubblico il servizio e consentire a chiunque abbia l'alias del servizio collegamento privato di richiedere una connessione, selezionare questa opzione.
Controllare l'accesso al servizio
Gli utenti che hanno l'esposizione controllata per impostazione di visibilità al servizio collegamento privato possono creare un endpoint privato nelle reti virtuali e richiedere una connessione al servizio. La connessione all'endpoint privato verrà creata in uno stato In sospeso nell'oggetto servizio collegamento privato. Il provider di servizi ha il compito di prendere una decisione sulla richiesta di connessione. È possibile approvare la connessione, rifiutare la connessione o eliminare la connessione. Solo le connessioni approvate possono inviare traffico al servizio collegamento privato.
L'azione di approvazione delle connessioni può essere automatizzata usando la proprietà di approvazione automatica nel servizio collegamento privato. L'approvazione automatica consente ai provider di servizi di preapprovare un set di abbonamenti e permettere a qeusti ultimi l'accesso automatico. I clienti dovranno condividere gli abbonamenti offline per consentire ai provider di servizi di aggiungerli all'elenco di approvazione automatica. L'approvazione automatica è un subset della matrice di visibilità.
Visibilità controlla le impostazioni di esposizione, mentre l'approvazione automatica controlla le impostazioni di approvazione per il servizio. Se un cliente richiede una connessione da una abbonamento nell'elenco di approvazione automatica, la connessione viene approvata automaticamente e viene stabilita. I provider di servizi non devono approvare manualmente la richiesta. Se un cliente richiede una connessione da una abbonamento che si trova nella matrice di visibilità e non nella matrice di approvazione automatica, la richiesta raggiungerà il provider di servizi. Il provider di servizi deve approvare manualmente le connessioni.
Recupero delle informazioni di connessione tramite il proxy TCP v2
Nel servizio collegamento privato, l'indirizzo IP di origine dei pacchetti provenienti dall'endpoint privato è sottoposto a NAT (Network Address Translation) sul lato del provider di servizi utilizzando l'IP NAT allocato dalla rete virtuale del provider. Le applicazioni ricevono l'indirizzo IP NAT allocato anziché l'indirizzo IP di origine effettivo dei consumer del servizio. Se l'applicazione necessita di un indirizzo IP di origine effettivo dal lato consumer, è possibile abilitare il protocollo proxy nel servizio e recuperare le informazioni dall'intestazione del protocollo proxy. Oltre all'indirizzo IP di origine, l'intestazione del protocollo proxy include anche il LinkID dell'endpoint privato. La combinazione di indirizzo IP di origine e LinkID consente ai provider di servizi di identificare in modo univoco i consumer.
Per altre informazioni sul protocollo proxy, vedere qui.
Queste informazioni vengono codificate usando un vettore TLV (Type-Length-Value) personalizzato come indicato di seguito:
Dettagli TLV personalizzati:
Campo | Lunghezza (ottetti) | Descrizione |
---|---|---|
Tipo | 1 | PP2_TYPE_AZURE (0xEE) |
Length | 2 | Lunghezza del valore |
Valore | 1 | PP2_SUBTYPE_AZURE_PRIVATEENDPOINT_LINKID (0x01) |
4 | UINT32 (4 byte) che rappresenta il LINKID dell'endpoint privato. Codificato in formato little endian. |
Nota
Il provider di servizi è tenuto ad assicurarsi che il servizio dietro il servizio di bilanciamento del carico standard sia configurato per analizzare l'intestazione del protocollo proxy in base alla specifica quando il protocollo proxy è abilitato nel servizio di Collegamento privato. La richiesta avrà esito negativo se l'impostazione del protocollo proxy è abilitata nel servizio del collegamento privato, ma il servizio del provider di servizi non è configurato per analizzare l'intestazione. La richiesta avrà esito negativo se il servizio del provider si aspetta un’intestazione di protocollo proxy mentre l’impostazione non è abilitata sul servizio di collegamento privato. Dopo aver abilitato l'impostazione del protocollo proxy, l'intestazione del protocollo proxy verrà inclusa anche nei probe di integrità HTTP/TCP dall'host alle macchine virtuali back-end. Le informazioni sul client non sono contenute nell'intestazione.
LINKID
corrispondente che fa parte del protocollo PROXYv2 (TLV) è reperibile in PrivateEndpointConnection
come proprietà linkIdentifier
.
Per altre informazioni, vedere API Servizi di Collegamento privato.
Limiti
Di seguito sono riportate le limitazioni note quando si usa il servizio collegamento privato:
Supportato solo in Load Balancer Standard. Non supportato in Load Balancer Basic.
Supportato solo in Load Balancer Standard se il pool back-end è configurato dalla scheda di interfaccia di rete. Non supportato in Load Balancer Standard se il pool back-end è configurato dall'indirizzo IP.
Supporta solo il traffico IPv4
Supporta solo il traffico TCP e UDP
Il servizio collegamento privato ha un timeout di inattività di circa 5 minuti (300 secondi). Per evitare di raggiungere questo limite, le applicazioni che si connettono tramite il servizio collegamento privato devono usare Keepalives TCP inferiori a tale tempo.
Per una regola NAT in ingresso con tipo impostato sul pool back-end da usare con il servizio di Collegamento privato di Azure, è necessario configurare una regola di bilanciamento del carico.