Che cos'è Azure Databricks Clean Rooms?
Questo articolo presenta Clean Rooms, una funzionalità di Azure Databricks che usa la condivisione delta e l'elaborazione serverless per fornire un ambiente sicuro e protetto dalla privacy in cui più parti possono collaborare sui dati aziendali sensibili senza accedere direttamente ai dati dell'altro.
Requisiti
Per essere idonei all'uso di camere pulite, è necessario disporre di:
- Un account abilitato per il calcolo serverless. Consultare la sezione Abilitare l’elaborazione serverless.
- Un'area di lavoro abilitata per il Unity Catalog. Vedere Abilitare un'area di lavoro per Unity Catalog.
- Delta Sharing abilitato per il metastore di Unity Catalog. Vedere Abilitare la condivisione Delta su un metastore.
Come funzionano le camere pulite?
Quando si crea una stanza pulita, creare quanto segue:
- Oggetto proteggibile di camera pulita nel metastore del tuo catalogo Unity.
- La stanza pulita "centrale", che è un ambiente temporaneo isolato gestito da Databricks.
- Oggetto clean room proteggibile nel metastore del Catalogo Unity del tuo collaboratore.
Tabelle, volumi (dati non tabulari), visualizzazioni e notebook che uno dei collaboratori condivide nella stanza pulita vengono condivisi solo con la stanza pulita centrale, utilizzando Delta Sharing.
I collaboratori non possono visualizzare i dati nelle tabelle, nelle viste o nei volumi di altri collaboratori, ma possono visualizzare i nomi di colonna e i tipi di colonna e possono eseguire codice notebook approvato che opera sugli asset di dati. Il codice del notebook viene eseguito nella stanza pulita centrale. I notebook possono anche generare tabelle di output che consentono ai collaboratori di salvare temporaneamente l'output di sola lettura nel metastore del catalogo Unity affinché possano utilizzarle nelle loro aree di lavoro.
In che modo Clean Rooms garantisce un ambiente senza attendibilità?
Il modello Databricks Clean Rooms è "senza attendibilità". Tutti i collaboratori in una stanza pulita senza trust hanno privilegi uguali, incluso il creatore della stanza pulita. Clean Rooms è progettato per impedire l'esecuzione di codice non autorizzato e la condivisione non autorizzata dei dati. Ad esempio, tutti i collaboratori devono approvare un notebook prima di poterlo eseguire. Questa relazione di trust viene applicata in modo implicito impedendo a un collaboratore di eseguire qualsiasi notebook creato da solo: è possibile eseguire solo un notebook creato dall'altro collaboratore.
Misure di sicurezza o restrizioni aggiuntive
Oltre al processo di approvazione implicito del notebook menzionato in precedenza, sono state applicate le misure di sicurezza seguenti:
Dopo la creazione di una stanza pulita, viene bloccato per impedire ai nuovi collaboratori di entrare nella stanza pulita.
Se un collaboratore elimina la stanza pulita, la stanza pulita centrale è vuota e nessuna attività della stanza pulita può essere eseguita da qualsiasi utente.
Durante l'anteprima pubblica, ogni camera pulita è limitata a due collaboratori.
Non è possibile rinominare la stanza pulita.
Il nome della stanza pulita deve essere univoco nel metastore di ogni collaboratore, in modo che tutti i collaboratori possano fare riferimento alla stessa stanza pulita senza ambiguità.
I commenti sull'entità a protezione diretta della stanza pulita nell'area di lavoro di ogni collaboratore non vengono propagati ad altri collaboratori.
Cosa viene condiviso con altri collaboratori?
- Nome della stanza pulita.
- Cloud e area della stanza pulita centrale.
- Nome dell'organizzazione (che può essere qualsiasi nome scelto).
- Identificatore di condivisione della stanza pulita (ID metastore globale + ID area di lavoro e indirizzo di posta elettronica utente).
- Alias di tabelle, viste o volumi condivisi.
- Metadati di colonna (nome della colonna o alias e tipo).
- Notebook (sola lettura).
- tabelle di output (di sola lettura, temporanee).
- Tabella di sistema degli eventi della sala pulita.
- Cronologia di esecuzione, tra cui:
- Nome del notebook in esecuzione
- Collaboratore che ha eseguito il notebook (non utente).
- Stato dell'esecuzione del notebook.
- Ora di inizio dell'esecuzione del notebook.
Cosa viene condiviso con la camera pulita centrale?
Tutto ciò che è elencato nella sezione precedente.
Tabelle, volumi, viste e notebook di sola lettura.
Le tabelle, le visualizzazioni e i volumi vengono registrati nel metastore della sala pulita centrale con gli alias forniti. Gli asset di dati vengono condivisi durante tutto il ciclo di vita della stanza pulita.
Domande frequenti su Clean Rooms
Di seguito sono riportate le domande frequenti sulle camere pulite.
Come sono gestiti i dati in una stanza pulita?
La stanza pulita centrale è gestita da Azure Databricks. Nella camera pulita centrale:
- Nessuna delle due parti dispone dei privilegi di amministratore.
- Solo i metadati sono visibili a tutte le parti.
- Ogni parte può aggiungere dati allo spazio condiviso centrale.
- Le camere pulite usano la condivisione Delta per condividere i dati in modo sicuro nella stanza pulita, ma non tra i partecipanti. Consulta Che cos'è la condivisione Delta?.
Come vengono mantenuti privati i dati?
Le clean room centrali vengono eseguite in un ambiente di calcolo serverless isolato gestito da Databricks, ospitato in una regione del cloud provider scelta dal creatore della clean room.
Le camere pulite forniscono:
- Approvazione del codice: Il creatore della sala pulita e i collaboratori possono condividere tabelle e volumi con la sala pulita centrale, ma possono eseguire solo i notebook caricati dall'altra parte. È possibile esaminare il codice aggiunto dall'altra parte prima dell'approvazione. Se si esegue un notebook aggiunto da un'altra parte, si approva in modo implicito il codice.
- Controllo della versione: i notebook di Clean rooms hanno il controllo della versione per assicurarsi che tutte le parti possano eseguire solo notebook completamente approvati. È possibile eseguire solo la versione più recente di un notebook. È possibile usare la tabella di sistema clean rooms per vedere quale versione del notebook è stata eseguita e monitorare le modifiche apportate.
- Accesso limitato: Quando si crea un ambiente controllato, è possibile utilizzare il controllo serverless delle uscite per gestire le connessioni di rete in uscita. Se si limita l'accesso dalla stanza pulita, l'accesso allo spazio di archiviazione non autorizzato viene bloccato. Consulta Che cos'è il controllo delle uscite serverless?.
Per ulteriori informazioni sulla sicurezza e sulla rete del piano di calcolo serverless, consultare Serverless compute plane networking.
Come vengono registrate le azioni?
Le azioni della sala pulita eseguite dall'utente o dai collaboratori vengono registrate nella tabella di sistema degli eventi della sala pulita. Questi record includono metadati dettagliati sull'azione specifica eseguita. Vedere riferimento alla tabella di sistema degli eventi nella camera bianca.
Le azioni della sala pulita vengono registrate anche nel log di controllo dell'account nel servizio clean-room
. Consulta la tabella di sistema del registro di controllo .
Limiti
Durante l'anteprima pubblica si applicano le limitazioni seguenti:
- Nessuna libreria scala credenziali del servizio inclusa nella versione richiesta di Databricks Runtime.
Quote di risorse
Azure Databricks applica quote di risorse a tutti gli oggetti a protezione diretta di Clean Room. Queste quote sono elencate in Limiti delle risorse. Se si prevede di superare questi limiti di risorse, contattare il team dell'account Azure Databricks.
È possibile monitorare l'utilizzo delle quote usando le API delle quote delle risorse di Unity Catalog. Consultare per monitorare l'utilizzo delle quote di risorse del catalogo Unity.