Come proteggere una lakehouse per i team di data science
Introduzione
In questo articolo verrà fornita una panoramica per imparare a configurare le impostazioni di sicurezza per una lakehouse su Fabric per l'uso con team e carichi di lavoro di data science.
Funzionalità di sicurezza
Microsoft Fabric usa un modello di sicurezza a più livelli con controlli diversi disponibili su diversi livelli, per fornire solo le autorizzazioni minime necessarie. Per altre informazioni sulle diverse funzionalità di sicurezza disponibili su Fabric, vedere questo documento.
Protezione in base al caso d'uso
La sicurezza in Microsoft Fabric è ottimizzata per la protezione dei dati per casi d'uso specifici. Un caso d'uso è un set di utenti che richiedono un accesso specifico e l'accesso ai dati tramite un determinato motore. Per gli scenari di data science, alcuni casi d'uso di esempio sono:
- Scrittori Apache Spark: utenti che devono scrivere dati in una lakehouse usando i notebook di Apache Spark.
- Lettori Apache Spark: utenti che devono leggere i dati usando i notebook di Apache Spark.
- Lettori di pipeline: utenti che devono leggere i dati da una lakehouse usando le pipeline.
- Creatori di collegamenti: utenti che devono creare collegamenti ai dati in una lakehouse.
È quindi possibile allineare ogni caso d'uso con le autorizzazioni necessarie su Fabric.
Accesso in scrittura
Per gli utenti che devono scrivere dati su Fabric, l'accesso viene controllato tramite i ruoli dell'Area di lavoro di Fabric. Esistono tre ruoli dell'area di lavoro che concedono autorizzazioni di scrittura: Amministratore, Membro e Collaboratore. Scegliere il ruolo richiesto e concedere agli utenti l'accesso.
Gli utenti con accesso in scrittura non sono limitati dai ruoli di accesso ai dati di OneLake (anteprima). Gli utenti di scrittura scrivono possono avere accesso limitato ai dati tramite i dati dell'endpoint di Analisi SQL, ma mantengono l'accesso completo ai dati in OneLake. Per limitare l'accesso ai dati per gli utenti di scrittura, è necessario creare un'area di lavoro separata per tali dati.
Accesso in lettura
Per gli utenti che devono leggere i dati usando pipeline o notebook Apache Spark, le autorizzazioni sono regolate dalle autorizzazioni dell'elemento Fabric insieme ai ruoli di accesso ai dati OneLake (anteprima). Le autorizzazioni per gli elementi di Fabric regolano gli elementi che un utente può visualizzare e come può accedere a tale elemento. I ruoli di accesso ai dati di OneLake regolano i dati a cui l'utente può accedere tramite le esperienze che si connettono a OneLake. Per le lakehouse senza l'anteprima dei ruoli di accesso ai dati OneLake abilitati, l'accesso è regolato dall'autorizzazione per l'elemento ReadAll e l'accesso ai dati di OneLake viene concesso per l'intera lakehouse.
Per leggere i dati, un utente deve prima accedere alla lakehouse in cui si trovano i dati. Si può ottenere l'accesso a una lakehouse selezionando il pulsante Condividi in una lakehouse dalla pagina dell'area di lavoro o dall'interfaccia utente della lakehouse. Immettere gli indirizzi email o il gruppo di sicurezza per tali utenti e selezionare Condividi. (Non selezionare le caselle Autorizzazioni aggiuntive). Per le lakehouse senza l'anteprima dei ruoli di accesso ai dati di OneLake abilitata, selezionare la casella Leggi tutti i dati di OneLake (ReadAll)).
Passare quindi alla lakehouse e selezionare il pulsante Gestisci accesso ai dati OneLake (anteprima). Con queste opzioni è possibile creare ruoli che concedono agli utenti l'accesso per visualizzare e leggere da cartelle specifiche nella lakehouse. L'accesso alle cartelle non è consentito per impostazione predefinita. Agli utenti aggiunti a un ruolo viene concesso l'accesso alle cartelle coperte da tale ruolo. Per altre informazioni, vedere Ruoli di accesso ai dati OneLake (anteprima). Creare ruoli in base alle esigenze per concedere agli utenti l'accesso per leggere le cartelle tramite pipeline, collegamenti o notebook Spark.
Importante
Tutte le lakehouse che usano l'anteprima dei ruoli di accesso ai dati di OneLake hanno un ruolo DefaultReader che concede l'accesso ai dati della lakehouse. Se un utente dispone dell'autorizzazione ReadAll, non gli verranno imposti limiti da altri ruoli di accesso ai dati. Assicurarsi che tutti gli utenti inclusi in un ruolo di accesso ai dati non facciano parte del ruolo DefaultReader, in tal caso rimuovere il ruolo DefaultReader.
Usare con i collegamenti
I collegamenti sono una funzionalità di OneLake che consente di fare riferimento ai dati da un'unica posizione senza copiare fisicamente i dati. Per altre informazioni, vedere la documentazione qui.
È possibile proteggere i dati da usare con i collegamenti esattamente come qualsiasi altra cartella in OneLake. Dopo aver configurato i ruoli di accesso ai dati, gli utenti di altre lakehouse potranno creare collegamenti solo alle cartelle a cui hanno accesso. Questa funzionalità può essere usata per consentire agli utenti in altre aree di lavoro di accedere solo ai dati selezionati in una lakehouse.
Importante
L'endpoint di Analisi SQL usa un'identità fissa per l'accesso ai collegamenti. Quando un utente esegue una query su una tabella di collegamento tramite l'endpoint di Analisi SQL, l'identità del proprietario della lakehouse viene verificata prima dell'accesso al collegamento. Ciò significa che quando si creano collegamenti da usare con query SQL, il creatore della lakehouse deve anche far parte di tutti i ruoli di accesso ai dati di OneLake che limitano l'accesso solo alle cartelle selezionate.