Condividi tramite


Configurare la rete per le app di Databricks

Databricks Apps supporta un controllo di rete con granularità fine per proteggere e gestire il modo in cui l'app comunica con Internet e le risorse interne. È possibile configurare regole di traffico in ingresso (in ingresso) e in uscita (in uscita) usando una combinazione di elenchi di accesso IP, connettività privata front-end e criteri di rete.

Architettura di rete

Azure Databricks distribuisce le app nel piano di calcolo serverless, in cui ricevono il traffico direttamente. Questo è simile ad altri servizi ottimizzati per la route, ad esempio Model Serving e Vector Search.

Il processo di connessione funziona come segue:

  1. Le richieste iniziali degli utenti a un'app Azure Databricks avviano l'autenticazione OAuth con il piano di controllo per convalidare la sessione e autorizzare l'accesso all'app.
  2. Al termine dell'autenticazione, tutte le richieste successive vengono instradate direttamente al piano di calcolo serverless senza attraversare il piano di controllo.

I criteri di sicurezza di rete configurati per il piano di calcolo serverless si applicano al traffico di Databricks Apps. Sono inclusi gli elenchi di accesso IP e le configurazioni di connettività privata front-end.

Controlli di ingresso

Usare le funzionalità seguenti per limitare l'accesso all'area di lavoro e alle app di Azure Databricks dalla rete Internet pubblica.

  • Elenchi di accesso IP: Limitare l'accesso all'area di lavoro e alle app a intervalli IP noti e attendibili abilitando gli elenchi di accesso IP a livello di area di lavoro. È consentito solo il traffico proveniente dagli intervalli IP configurati. Per informazioni dettagliate, vedere Configurare gli elenchi di accesso IP per le aree di lavoro.
  • Connettività privata front-end: Instrada il traffico in ingresso tramite una connessione Azure Private Link per accedere in modo sicuro alle app attraverso la rete virtuale.

    È necessario configurare l'inoltro DNS condizionale per il databricksapps.com dominio per garantire la risoluzione corretta dei nomi tramite la connessione privata. In caso contrario, le query DNS per il dominio dell'app potrebbero risolversi in indirizzi IP pubblici anziché nell'endpoint privato. Per istruzioni sull'installazione, vedere Configurare il collegamento privato front-end.

Controlli in uscita

Per controllare il traffico in uscita dall'app, creare una configurazione di connettività di rete (NCC) e applicare i criteri di rete all'area di lavoro che ospita l'app.

Configurazioni di connettività di rete

Usare una configurazione di connettività di rete per connettere in modo sicuro l'app ai servizi di Azure. I Controller di rete (NCC) forniscono ID di subnet stabili che è possibile aggiungere al firewall di un account di archiviazione per consentire esplicitamente l'accesso dalla tua app e da altre risorse di elaborazione serverless.

Per limitare ulteriormente il traffico in uscita verso destinazioni private, configurare endpoint privati senza server per le risorse di Azure o instradare il traffico attraverso un bilanciatore del carico Azure nella tua rete virtuale.

Criteri di rete

Usare i criteri di rete per applicare restrizioni in uscita per le app Databricks e altri carichi di lavoro serverless. Ciò è utile quando è necessario soddisfare i requisiti aziendali o di conformità per controllare la connettività in uscita.

Annotazioni

I criteri di rete sono disponibili solo nel livello Premium.

Applica un criterio di rete se la tua app:

  • Deve limitare l'accesso a un set specifico di domini esterni approvati
  • Deve impedire l'esfiltrazione accidentale dei dati
  • Deve essere conforme agli standard di sicurezza o conformità che limitano il traffico Internet in uscita

Procedure consigliate per la configurazione dei criteri di rete

Seguire queste linee guida per evitare interruzioni impreviste e assicurarsi che le app possano accedere alle risorse necessarie:

  • Consenti solo le destinazioni obbligatorie. Aggiungere nomi di dominio completi (FQDN) per le risorse pubbliche o private necessarie per l'app.
  • Includere i repository di pacchetti in base alle esigenze. Se la app installa pacchetti Python o Node.js pubblici, potrebbe essere necessario consentire domini come pypi.org per Python o registry.npmjs.org per Node. L'applicazione potrebbe richiedere domini aggiuntivi o diversi a seconda delle dipendenze specifiche. Senza questi repository, le compilazioni di app basate su requirements.txt o package.json potrebbero non riuscire.
  • Usare la modalità di esecuzione a secco per convalidare i criteri di rete. Questa modalità simula l'imposizione dei criteri senza bloccare il traffico.
  • Esaminare i tentativi di connessione negati usando la system.access.outbound_network tabella . Ciò consente di identificare i domini che potrebbe essere necessario consentire. Consulta Controllare i log di rifiuto.
  • Aggiungere eventuali domini esterni necessari, ad esempio API attendibili o account di archiviazione di Azure non registrati nel catalogo unity.

Crittografia e routing del traffico

Databricks Apps usa percorsi di routing dedicati e più livelli di crittografia per proteggere le comunicazioni di rete e proteggere i dati.

instradamento del traffico

Il traffico tra il piano di controllo di Azure Databricks, il piano di calcolo, altre risorse di Azure Databricks e i servizi cloud passa attraverso la rete globale del provider di servizi cloud e non attraversa la rete Internet pubblica.

Il traffico tra gli utenti e databricksapps.com potrebbe attraversare la rete Internet pubblica a seconda del percorso di rete dell'utente. Per evitare il routing Internet pubblico, configurare la connettività privata del front-end.

Crittografia durante il transito

Tutte le comunicazioni di rete da e verso le app vengono crittografate:

  • Traffico utente: La comunicazione tra utenti e databricksapps.com usa la crittografia TLS (Transport Layer Security) 1.3.
  • Traffico del piano di controllo: La comunicazione tra il piano di controllo di Azure Databricks e il piano di calcolo utilizza TLS reciproco (mTLS) per le operazioni di gestione, inclusa la creazione, l'aggiornamento e l'eliminazione di app.

Crittografia a riposo

Databricks Apps crittografa i dati archiviati usando i metodi seguenti:

  • Codice dell'applicazione: Azure Databricks archivia il codice dell'app nei file dell'area di lavoro e usa la stessa crittografia dei notebook e di altri file dell'area di lavoro.
  • Archiviazione di calcolo: Le app usano dischi del sistema operativo host temporanei crittografati con AES-256 e l'implementazione di crittografia predefinita del provider di servizi cloud.